<SEC-DOCUMENT>0001493152-23-010222.txt : 20230331
<SEC-HEADER>0001493152-23-010222.hdr.sgml : 20230331
<ACCEPTANCE-DATETIME>20230331160059
ACCESSION NUMBER:		0001493152-23-010222
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		104
CONFORMED PERIOD OF REPORT:	20221231
FILED AS OF DATE:		20230331
DATE AS OF CHANGE:		20230331

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
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-31540
		FILM NUMBER:		23787349

	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
<SEQUENCE>1
<FILENAME>form10-k.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/2022" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:us-gaap-supplement="http://fasb.org/us-gaap-sup/2022q3" xmlns:srt-supplement="http://fasb.org/srt-sup/2022q3" xmlns:us-roles="http://fasb.org/us-roles/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:srt="http://fasb.org/srt/2022" xmlns:FSI="http://flexiblesolutions.com/20221231">
<head>
     <title></title>
<meta http-equiv="Content-Type" content="text/html" />
</head>
<!-- Field: Set; Name: xdx; ID: xdx_02B_US%2DGAAP%2D2022 -->
<!-- Field: Set; Name: xdx; ID: xdx_03A_FSI_flexiblesolutions.com_20221231 -->
<!-- Field: Set; Name: xdx; ID: xdx_048_20220101_20221231 -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DEntityCentralIndexKey_0001069394 -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DAmendmentFlag_false -->
<!-- Field: Set; Name: xdx; ID: xdx_05F_edei%2D%2DEntityIncorporationStateCountryCode_A0 -->
<!-- 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="From2022-01-01to2022-12-31" name="dei:EntityCentralIndexKey">0001069394</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:AmendmentFlag">false</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityIncorporationStateCountryCode">A0</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:DocumentFiscalPeriodFocus">FY</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0024" name="dei:EntityIncorporationStateCountryCode">A0</ix:nonNumeric>
  <ix:nonFraction name="FSI:FiniteLivedPatentGross" contextRef="AsOf2022-12-31" id="xdx2ixbrl0079" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:GainLossOnSaleOfLand" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0271" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:PppLoanForgiveness" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0274" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:GainOnAcquisition" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0281" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:GainLossOnSaleOfLand" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0367" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:GainOnAcquisitionOfSubsidiary" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0371" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:PaycheckProtectionProgramLoanForgiveness" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0373" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquireInvestments" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0403" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0410" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0412" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0431" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0473" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0491" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0492" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0493" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0496" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0499" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0500" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0502" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0509" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0510" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0512" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0517" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0518" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0519" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0520" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" id="xdx2ixbrl0521" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0525" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0527" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0528" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0530" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0553" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0554" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0555" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0558" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0561" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0562" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0564" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0571" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0572" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0574" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0579" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember" id="xdx2ixbrl0580" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0581" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0582" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-012022-12-31_us-gaap_ParentMember" id="xdx2ixbrl0583" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0587" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0589" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0590" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember" id="xdx2ixbrl0592" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember" id="xdx2ixbrl0843" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31_us-gaap_DevelopedTechnologyRightsMember" id="xdx2ixbrl0846" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_LandMember" id="xdx2ixbrl0848" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember" id="xdx2ixbrl0879" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember" id="xdx2ixbrl0882" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_LandMember" id="xdx2ixbrl0884" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2022-12-31" id="xdx2ixbrl0917" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember84251703" id="xdx2ixbrl1028" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2022-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" id="xdx2ixbrl1109" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2022-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" id="xdx2ixbrl1125" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember" id="xdx2ixbrl1147" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember" id="xdx2ixbrl1161" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" id="xdx2ixbrl1197" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2022-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" id="xdx2ixbrl1210" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_NanoChemMember_custom_TermLoanMember_custom_MidlandBankMember" id="xdx2ixbrl1240" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember" id="xdx2ixbrl1244" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2021-01-012021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember" id="xdx2ixbrl1255" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember" id="xdx2ixbrl1259" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_ENPPeruInvestmentsMember_custom_TermLoanMember_custom_MidlandBankMember" id="xdx2ixbrl1269" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember" id="xdx2ixbrl1273" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_NanoChemMember_custom_TermLoanMember" id="xdx2ixbrl1281" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_NanoChemMember" id="xdx2ixbrl1285" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromBankDebt" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1296" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:ProceedsFromLoanAcquiredFromAcquisition" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1299" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:RepaymentsOfBankDebt" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1301" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_MidlandStatesBankMember" id="xdx2ixbrl1312" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember" id="xdx2ixbrl1313" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_PaycheckProtectionProgramMember" id="xdx2ixbrl1315" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramMember" id="xdx2ixbrl1316" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_PaycheckProtectionProgramOneMember" id="xdx2ixbrl1318" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramOneMember" id="xdx2ixbrl1319" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_MidlandStatesBankOneMember" id="xdx2ixbrl1321" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_MidlandStatesBankTwoMember" id="xdx2ixbrl1324" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_StockYardsBankTrustTwoMember" id="xdx2ixbrl1331" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_StockYardsBankTrustThreeMember" id="xdx2ixbrl1334" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_StockYardsBankTrustFourMember" id="xdx2ixbrl1337" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_StockYardsBankTrustFiveMember" id="xdx2ixbrl1340" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:IncomeTaxRecovery" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1368" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1379" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1380" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1405" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:CurrentIncomeTaxExpense" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1428" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" id="xdx2ixbrl1436" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsNet" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" id="xdx2ixbrl1452" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsNet" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" id="xdx2ixbrl1454" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1456" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1458" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1462" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsDerivativeInstruments" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1476" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsDerivativeInstruments" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1478" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:DeferredTaxAssetNotRecognized" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1480" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="FSI:DeferredTaxAssetNotRecognized" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" id="xdx2ixbrl1482" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember" id="xdx2ixbrl1746" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember" id="xdx2ixbrl1766" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember" id="xdx2ixbrl1774" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember" id="xdx2ixbrl1794" unitRef="USD" xs:nil="true"></ix:nonFraction>
  </ix:hidden>
 <ix:references>
  <link:schemaRef xlink:href="fsi-20221231.xsd" xlink:type="simple" />
  </ix:references>
 <ix:resources>
    <xbrli:context id="From2022-01-01to2022-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2023-03-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2023-03-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</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="From2021-01-012021-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="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="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="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_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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentsLLCMember</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="From2022-01-012022-12-31_custom_EnpPeruMember_custom_UnrelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpPeruMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:UnrelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_EnpPeruMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpPeruMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_EnpPeruMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpPeruMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="From2022-01-012022-12-31_custom_InvestmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:InvestmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_BuildingAndBuildingImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_CustomerRelationshipsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_SoftwareMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:SoftwareMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</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_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="AsOf2021-03-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-03-31</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="From2022-01-012022-12-31_us-gaap_PatentsMember84249640">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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:FiniteLivedIntangibleAssetsByMajorClassAxis">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="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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_NanoChemMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_EnpInvestmentsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-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_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_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:instant>2018-12-31</xbrli:instant>
      </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="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">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="AsOf2022-12-31_custom_FloridaBasedLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </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="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">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_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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390">
      <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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="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="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="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember84251703">
      <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>2022-12-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="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703">
      <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_FloridaBasedLLCMember84251718">
      <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="AsOf2022-12-31_custom_FloridaBasedLLCMember84251734">
      <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>2022-12-31</xbrli:instant>
      </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="From2022-01-012022-06-30_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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-03-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>2022-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-03-012022-03-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>2022-03-01</xbrli:startDate>
        <xbrli:endDate>2022-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-03-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>2022-03-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="AsOf2022-03-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>2022-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-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="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_StockYardAndBankMember_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:StockYardAndBankMember</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>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-06-012022-06-30_custom_StockYardAndBankMember_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:StockYardAndBankMember</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>2022-06-01</xbrli:startDate>
        <xbrli:endDate>2022-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_StockYardAndBankMember_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:StockYardAndBankMember</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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
      <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>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
      <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>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
      <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>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_StockBankMember_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:StockBankMember</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>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-06-012022-06-30_custom_StockBankMember_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:StockBankMember</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>2022-06-01</xbrli:startDate>
        <xbrli:endDate>2022-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-09-30_custom_StockBankMember_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:StockBankMember</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>2022-09-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember">
      <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>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember">
      <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>
          <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockBankMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember">
      <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:EnpInvestmentsLLCMember</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_EnpInvestmentsLLCMember">
      <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:EnpInvestmentsLLCMember</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_EnpInvestmentsLLCMember">
      <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:EnpInvestmentsLLCMember</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-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_EnpInvestmentsLLCMember">
      <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:EnpInvestmentsLLCMember</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_EnpInvestmentsLLCMember">
      <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: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="From2022-01-012022-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:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-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:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </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-10-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-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="From2020-10-012020-10-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:startDate>2020-10-01</xbrli:startDate>
        <xbrli:endDate>2020-10-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </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="AsOf2022-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>2022-12-31</xbrli:instant>
      </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-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
      <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:ENPMendotaMember</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_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
      <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:ENPMendotaMember</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="From2022-01-012022-12-31_custom_ENPMendotaMember_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:ENPMendotaMember</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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ENPMendotaMember_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:ENPMendotaMember</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="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
      <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:ENPMendotaMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
      <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:ENPMendotaMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
      <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:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemMember">
      <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:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
      <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:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-06-01</xbrli:startDate>
        <xbrli:endDate>2022-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_NanoChemMember_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:NanoChemMember</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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_NanoChemMember_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:NanoChemMember</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="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
      <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:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
      <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:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
      <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:ENPPeruOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-01-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruOneMember">
      <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:ENPPeruOneMember</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_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
      <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:ENPPeruOneMember</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="From2022-01-012022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
      <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:ENPPeruOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
      <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:ENPPeruOneMember</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="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
      <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:ENPPeruOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
      <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:ENPPeruOneMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
      <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
      <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-06-01</xbrli:startDate>
        <xbrli:endDate>2022-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruInvestmentsMember">
      <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_ENPPeruInvestmentsMember_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:ENPPeruInvestmentsMember</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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ENPPeruInvestmentsMember_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:ENPPeruInvestmentsMember</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="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
      <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
      <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TermLoanMember_custom_NanoChemMember">
      <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:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TermLoanMember_us-gaap_PrimeRateMember_custom_NanoChemMember">
      <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:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_NanoChemMember_custom_TermLoanMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_NanoChemMember_custom_TermLoanMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">FSI:TermLoanMember</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_TermLoanMember_custom_NanoChemMember">
      <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:NanoChemMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-12-31_custom_StockYardsBankTrustTwoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustTwoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_StockYardsBankTrustTwoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustTwoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_StockYardsBankTrustThreeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustThreeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_StockYardsBankTrustThreeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustThreeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_StockYardsBankTrustFourMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFourMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_StockYardsBankTrustFourMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFourMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_StockYardsBankTrustFiveMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFiveMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_StockYardsBankTrustFiveMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFiveMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </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="AsOf2022-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>2022-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="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TwoThousandThirtyOneYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyOneYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TwoThousandThirtyTwoYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyTwoYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TwoThousandThirtySevenYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtySevenYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TwoThousandThirtyNineYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyNineYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TwoThousandFourtyYearMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandFourtyYearMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_StockOptionMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_StockOptionMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</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="From2022-01-012022-12-31_us-gaap_StockOptionMember_custom_ConsultantMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_StockOptionMember_custom_ConsultantMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantMember</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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember84259375">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="FSI:StatementEquityComponentsAxisipAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember">
      <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">FSI:SegmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:TPAMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_SegmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember">
      <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">FSI:SegmentMember</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_TPAMember_custom_SegmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:TPAMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</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_SegmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="From2022-01-012022-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>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-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="AsOf2022-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>2022-12-31</xbrli:instant>
      </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="AsOf2022-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>2022-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="AsOf2022-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>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_ThreeCustomersMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </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_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">FSI:ThreeCustomersMember</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="From2023-01-012023-03-31_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>2023-01-01</xbrli:startDate>
        <xbrli:endDate>2023-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2023-01-012023-03-31_custom_ConsultantsMember_us-gaap_SubsequentEventMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001069394</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2023-01-01</xbrli:startDate>
        <xbrli:endDate>2023-03-31</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; 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; text-align: center"><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 4pt solid; font-size: 1pt; border-bottom: Black 1.5pt solid">&#160;</div></div><!-- Field: /Rule-Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><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; 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; 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; 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; 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; 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; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b>FORM
<span id="xdx_90F_edei--DocumentType_c20220101__20221231_zo6BIbxWNK5i"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:DocumentType">10-K</ix:nonNumeric></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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; 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; 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 style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_edei--DocumentAnnualReport_c20220101__20221231_z1jncKofJLh2"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleantrue" name="dei:DocumentAnnualReport">&#9746;</ix:nonNumeric></span></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_905_edei--DocumentPeriodEndDate_c20220101__20221231_zLdcdXhcOT3e"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate"><span id="xdx_900_edei--CurrentFiscalYearEndDate_c20220101__20221231_z7cNUOZqtmP6"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:datemonthdayen" name="dei:CurrentFiscalYearEndDate">December 31</ix:nonNumeric></span>, <span id="xdx_906_edei--DocumentFiscalYearFocus_c20220101__20221231_zyvLLc57qCXh"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:DocumentFiscalYearFocus">2022</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 style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_edei--DocumentTransitionReport_c20220101__20221231_zlfbJleaGEy2"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleanfalse" name="dei:DocumentTransitionReport">&#9744;</ix:nonNumeric></span></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: 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; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Commission
File No. <span id="xdx_90D_edei--EntityFileNumber_c20220101__20221231_zfSfBtDBgBvj" title="Entity File Number"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityFileNumber">001-31540</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b><span style="text-decoration: underline"><span id="xdx_908_edei--EntityRegistrantName_c20220101__20221231_zrvewZ7WbTj3"><ix:nonNumeric contextRef="From2022-01-01to2022-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: 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; 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 id="xdx_908_edei--EntityIncorporationStateCountryCode_dxL_c20220101__20221231_zm2JJDLQnRM8" title="::XDX::A0"><span style="-sec-ix-hidden: xdx2ixbrl0024">Alberta</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_901_edei--EntityTaxIdentificationNumber_c20220101__20221231_zUq4yVIVOCll"><ix:nonNumeric contextRef="From2022-01-01to2022-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_906_edei--EntityAddressAddressLine1_c20220101__20221231_zGr65YeGvMre"><ix:nonNumeric contextRef="From2022-01-01to2022-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_905_edei--EntityAddressCityOrTown_c20220101__20221231_zR8KwvXgzB3g"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityAddressCityOrTown">Taber</ix:nonNumeric></span>,
    Alberta, <span id="xdx_90E_edei--EntityAddressCountry_c20220101__20221231_zbMUQYGRXWec"><ix:nonNumeric contextRef="From2022-01-01to2022-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_907_edei--EntityAddressPostalZipCode_c20220101__20221231_zv0VSE76FDTc"><ix:nonNumeric contextRef="From2022-01-01to2022-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; 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; 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_c20220101__20221231_zJoYzsMufU53"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:CityAreaCode">(403)</ix:nonNumeric></span> <span id="xdx_905_edei--LocalPhoneNumber_c20220101__20221231_zAWdiABEl1j7"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:LocalPhoneNumber">223-2995</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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: 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; 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: 20%"><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; 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: 38%"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_edei--Security12bTitle_c20220101__20221231_zZkJiCOVJoV9"><ix:nonNumeric contextRef="From2022-01-01to2022-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"><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_edei--TradingSymbol_c20220101__20221231_z9mH6fbgP2n9"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:TradingSymbol">FSI</ix:nonNumeric></span></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_908_edei--SecurityExchangeName_c20220101__20221231_zHJPZrDYdGg1"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName">NYSE
    American</ix:nonNumeric></span></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Yes
&#9744; <span id="xdx_90A_edei--EntityWellKnownSeasonedIssuer_c20220101__20221231_zjYaRWh3Y5N4"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityWellKnownSeasonedIssuer">No</ix:nonNumeric></span> &#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Yes
&#9744; <span id="xdx_904_edei--EntityVoluntaryFilers_c20220101__20221231_zq36HHbS3yoa"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityVoluntaryFilers">No</ix:nonNumeric></span> &#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_905_edei--EntityCurrentReportingStatus_c20220101__20221231_z1qVkQtueBG5" title="Entity Current Reporting Status"><ix:nonNumeric contextRef="From2022-01-01to2022-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; 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; 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_90B_edei--EntityInteractiveDataCurrent_c20220101__20221231_zDk1JTGfF9j9"><ix:nonNumeric contextRef="From2022-01-01to2022-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; 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; 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; 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; 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; 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_90B_edei--EntityFilerCategory_c20220101__20221231_z4CatjHuVCj9"><ix:nonNumeric contextRef="From2022-01-01to2022-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_903_edei--EntitySmallBusiness_c20220101__20221231_zp0mdyYBPAJ3"><ix:nonNumeric contextRef="From2022-01-01to2022-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">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</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_908_edei--EntityEmergingGrowthCompany_c20220101__20221231_z1QspYYEnSJ3"><ix:nonNumeric contextRef="From2022-01-01to2022-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; 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; 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; 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; 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_90F_edei--IcfrAuditorAttestationFlag_c20220101__20221231_zw6bMUXbNrAd"><ix:nonNumeric contextRef="From2022-01-01to2022-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; 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; 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_906_edei--EntityShellCompany_c20220101__20221231_zmsezuG6MMM9"><ix:nonNumeric contextRef="From2022-01-01to2022-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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2022 the aggregate market value of the Company&#8217;s common stock held by non-affiliates was $<span id="xdx_900_edei--EntityPublicFloat_iI_c20220630_zsQvenSDQEj" title="Entity Public Float"><ix:nonFraction name="dei:EntityPublicFloat" contextRef="AsOf2022-06-30" format="ixt:numdotdecimal" decimals="0" unitRef="USD">19,343,103</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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 30, 2023, the Company had <span id="xdx_900_edei--EntityCommonStockSharesOutstanding_iI_pid_c20230330_zyUkBZb5Dzf"><ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" contextRef="AsOf2023-03-30" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,435,532</ix:nonFraction></span> issued and outstanding shares of common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; font-size: 1pt; border-bottom: Black 4pt solid">&#160;</div></div><!-- Field: /Rule-Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
terms &#8220;Flexible&#8221;, &#8220;Company&#8221;, &#8220;we&#8221;, &#8220;us&#8221;, and &#8220;our&#8221; are used to refer to Flexible
Solutions International Inc. and its subsidiaries, unless the context otherwise requires.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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; 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; 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; 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, 2022 (&#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; 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; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</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="text-align: left; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><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; 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; 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; width: 0.75in; text-align: justify"><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; 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; 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; 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; 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 (&#8220;IP&#8221;), 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; 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; 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; 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; 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 Florida based 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; 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; 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">In
June 2022, ENP Peru Investments, LLC became a wholly owned subsidiary with NanoChem Solutions Inc. owning 91.67% and ENP Investments,
LLC owning 8.33%. of ENP Peru.</span></p>

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


<!-- Field: Page; Sequence: 3; 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"><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; 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; 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; 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; 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; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i></i></span></p>

<!-- Field: Page; Sequence: 4; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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">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; 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; 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; 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; 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; 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; 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; 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#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 style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2022</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">2021</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: 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: 60%; text-align: left">Company A</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">6,677,815</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,877,690</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">12,938,735</td><td style="text-align: left">&#160;</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></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">8,159,066</td><td style="text-align: left">&#160;</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></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#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 style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2022</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">2021</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: 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: 60%; text-align: left">Company A</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">3,634,083</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">2,215,119</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">2,423,285</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,202,345</td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><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; 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; 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.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">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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"></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 -->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">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 0pt; 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; 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; 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"><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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
spent $99,275 during the year ended December 31, 2022 and $116,411 during year ended December 31, 2021 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, we had 42 employees, including one officer, 14 sales and customer support personnel, and 27 manufacturing personnel.
None of our employees are 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; 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; 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; 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; 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; 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; 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; 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; 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; 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: 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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i></i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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.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">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"><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">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; 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; 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; 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; 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; 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; 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; 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; 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; 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: 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 -->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"><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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i></i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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 2023.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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.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">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; 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; 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; 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; 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; 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; 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; in
Item 1 of this report for further details.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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 21% of our revenues in the year ended December 31, 2022,
20% in the year ended December 31, 2021 and 32% in the year ended December 31, 2020. 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; 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.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">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>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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">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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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: 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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i></i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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; 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; 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; 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; width: 72px; text-align: justify"><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; 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; 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; 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; width: 72px; text-align: justify"><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; 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; 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. 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 61,200 sq. ft. facility and a 56,780 sq. ft. facility in Peru, Illinois along
with 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the year ended December 31, 2021, 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; 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; width: 72px; text-align: justify"><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; 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; 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; 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; width: 72px; text-align: justify"><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; 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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><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; 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-top: 0pt; margin-bottom: 0pt; 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: 72px; text-align: justify"><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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">High</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Low</td><td style="padding-bottom: 1.5pt; 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, 2022</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="width: 64%; text-align: left; padding-left: 10pt">First Quarter</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">4.44</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.01</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">Second Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3.96</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.23</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">Third Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.68</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.56</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">Fourth Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3.24</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2.38</td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">High</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Low</td><td style="padding-bottom: 1.5pt; 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, 2021</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">First Quarter</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; 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: 14%; 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="text-align: left; padding-left: 10pt">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="text-align: left; padding-left: 10pt">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="text-align: left; padding-left: 10pt">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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 30, 2023, we had approximately 2,300 shareholders.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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, 2022 and 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 30, 2023, we had 12,435,532 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 30, 2023:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">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">Reference</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">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: 14%; text-align: right">1,673,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"><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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A.
Options are exercisable at prices ranging from $1.70 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; 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; text-align: justify"><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; 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; 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; 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; width: 0.75in; text-align: justify"><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; 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; 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; 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; text-align: justify; text-indent: 35.45pt"><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; 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; text-align: justify; text-indent: 35.45pt"><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; text-align: justify"><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 -->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"><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; text-align: justify; text-indent: 35.45pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 used for the agriculture industry. These products decrease the loss of nitrogen
fertilizer after initial application and allows less fertilizer to be used. These products are made and sold by the Company&#8217;s TPA
division.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 as compared to the
same period last year, are discussed below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 0pt 0pt 20pt; 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; text-align: justify"></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; 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; 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; text-align: center"></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; 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; 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">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</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: 20pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Growth
in most product lines.</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">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</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">Cost
    of goods sold</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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increased
    raw material costs and increased wages to retain manufacturing 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">&#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: 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: 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">Wages</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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increased
    wages for employee retention. </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; 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>
    <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"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Administrative
salaries</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 for employee retention.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</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">Professional
    fees</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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increased
due to costs associated with now cancelled merger with Lygos Inc.</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">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</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">Office
    and miscellaneous</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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increase
related to fees associated with moving loans from Midland States Bank to Stock Yards Bank.</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">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Insurance</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">Increase
    in assets and in sales resulted in higher insurance costs.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Interest</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"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Increase
due to loans assumed upon purchase of ENP Peru, LLC.</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">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</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">Travel</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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Travel
    has resumed as COVID-19 has become an endemic. </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">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</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">Lease Expense</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">D</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">Purchases of ENP Mendota and ENP Peru, the businesses we were renting from,
reduced our lease expense.</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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.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">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; 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; 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; text-align: justify"><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 -->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"><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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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, 2022 and 2021 are shown below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">2022</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">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; 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: 16%; text-align: right">1,476,903</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,535,746</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Purchase of investments</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 from equity investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">265,001</td><td style="text-align: left">&#160;</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></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Acquisition of ENP Peru, LLC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(499,329</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</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">Sale of property and equipment</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">263,380</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <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">(1,981,307</td><td style="text-align: left">)</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></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Advances of short term line of credit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">517,772</td><td style="text-align: left">&#160;</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></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <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">(2,292,819</td><td style="text-align: left">)</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></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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">3,230,798</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Lease payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(58,611</td><td style="text-align: left">)</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></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">(689,434</td><td style="text-align: left">)</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></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,620</td><td style="text-align: left">&#160;</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></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Impact of foreign exchange rates</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(30,069</td><td style="text-align: left">)</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></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022,
our working capital was $20,692,526 (2021 - $13,986,013) 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; 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; 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 $219,480 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; 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; 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 three years are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 72%; text-align: justify">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 24%; text-align: right">77,100</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <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: rgb(204,238,255)">
    <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 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>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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: 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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 review 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; 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; 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><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; text-align: justify; text-indent: 0.5in"><i>Stock Based Compensation</i>
The fair value of share-based payments are subject to the limitations of the Black-Scholes option pricing model that incorporates market
data and involves uncertainty in estimates used by management in the assumptions. Because the Black-Scholes option pricing model requires
the inputs of highly subjective assumptions, including the volatility of share prices, changes in subjective input assumptions can materially
affect the estimate.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><i>Income Taxes </i>Tax interpretations,
regulations and legislation in the various jurisdictions in which the Company operates are subject to change and interpretation. As such,
income taxes are subject to measurement uncertainty. Assessing the recoverability of deferred tax assets requires the Company to make
estimates related to the expectations of future taxable income and the application of existing tax laws. To the extent that future taxable
income differs significantly from estimates, the ability of the Company to realize deferred tax assets could be impacted.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><i>Privately Held Equity Investments
</i>The recoverability of privately held equity investments requires management to make certain assumptions and estimates. Changes in
these assumptions and estimates could result in materially different results.</p>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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, 2022 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; 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; text-align: justify"><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; 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; 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; 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 -->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"><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; 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; 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; 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; 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; 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: rgb(204,238,255)">
    <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="#Z_001">Report of Independent Registered Public Accounting Firm, Smythe LLP</a> (PCAOB ID NO: <span id="xdx_90B_edei--AuditorFirmId_c20220101__20221231_zjlbf2dwq6bb"><ix:nonNumeric contextRef="From2022-01-01to2022-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="#Z_002"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consolidated Balance Sheets as of December 31, 2022 and 2021</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: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="#Z_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, 2022 and 2021</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="#Z_004"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consolidated Statements of Cash Flows for the Years Ended December 31, 2022 and 2021</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: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><a href="#Z_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, 2022 and 2021</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="#Z_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; 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 -->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"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; text-align: left; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><img src="audit_001.jpg" alt="" style="width: 210px" /></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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 its subsidiaries (the
&#8220;Company&#8221;) which comprise the consolidated balance sheets as of December 31, 2022 and 2021, 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; 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; 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, 2022 and 2021, 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.&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; text-align: justify">At December 31, 2022, the Company&#8217;s inventory balance was $14,419,430. 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 style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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. 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.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 0pt; 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; 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: 0pt; text-align: justify"><span id="xdx_908_edei--AuditorName_c20220101__20221231_z6El65plxfLd"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:AuditorName">Smythe LLP</ix:nonNumeric></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_905_edei--AuditorLocation_c20220101__20221231_zEFGl3UVMxBl"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:AuditorLocation">Vancouver,
Canada</ix:nonNumeric></span></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><img src="audit_002.jpg" alt="" style="width: 670px" />&#160;</span></p>

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


<!-- Field: Page; Sequence: 17; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<table cellpadding="0" cellspacing="0" id="xdx_30C_111_zIGENM6Vs8K2" 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; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20221231_zX2V3SRTK1Zd" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20211231_zDNlOEUIIBE" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; 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_400_eus-gaap--Cash_i02I_maACztSU_zfXVkkXEr3nj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; padding-left: 10pt">Cash</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:Cash" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,115,099</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: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></tr>
  <tr id="xdx_409_eus-gaap--DepositsAssetsCurrent_i02I_pp0p0_maACztSU_z4k6PB4tCQq7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">700,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: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></tr>
  <tr id="xdx_402_eus-gaap--AccountsReceivableNetCurrent_i02I_pp0p0_maACztSU_zFEcmsSnJ4d1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,449,857</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="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></tr>
  <tr id="xdx_403_eus-gaap--InventoryNet_i02I_pp0p0_maACztSU_zSJwk82UfXsa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">14,419,430</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="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></tr>
  <tr id="xdx_401_eus-gaap--PrepaidExpenseCurrent_i02I_pp0p0_maACztSU_zfPlY0HCUOqk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Prepaid expenses</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:PrepaidExpenseCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">310,297</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:PrepaidExpenseCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">442,161</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--AssetsCurrent_i02TI_pp0p0_mtACztSU_maAzAZ9_zmIZ9k3zm7p" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">30,994,683</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="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></tr>
  <tr id="xdx_400_eus-gaap--PropertyPlantAndEquipmentNet_i01I_pp0p0_maAzAZ9_zzEA4i0HHDT3" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,709,288</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="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></tr>
  <tr id="xdx_40F_ecustom--FiniteLivedPatentGross_i01I_pp0p0_maAzAZ9_znsADFTKvVn3" 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"><span style="-sec-ix-hidden: xdx2ixbrl0079">-</span></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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,699</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--OperatingLeaseRightOfUseAsset_i01I_pp0p0_maAzAZ9_zlKF3lzNBNmd" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">167,222</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="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 id="xdx_40D_eus-gaap--IntangibleAssetsNetExcludingGoodwill_i01I_pp0p0_maAzAZ9_zuYh3Xeo2Xeh" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,440,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="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></tr>
  <tr id="xdx_408_eus-gaap--DepositsAssetsNoncurrent_i01I_pp0p0_maAzAZ9_zvlYz2MDtm1" 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="AsOf2022-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="AsOf2021-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_40A_eus-gaap--EquityMethodInvestments_i01I_pp0p0_maAzAZ9_z1CgOUTkVM6" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,458,895</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="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></tr>
  <tr id="xdx_407_eus-gaap--Goodwill_i01I_pp0p0_maAzAZ9_zAxvNh31n7hg" 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="AsOf2022-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="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></tr>
  <tr id="xdx_40B_eus-gaap--DeferredIncomeTaxAssetsNet_i01I_pp0p0_maAzAZ9_zXJxx7ga9j24" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Deferred tax asset (Note 13)</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:DeferredIncomeTaxAssetsNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">274,289</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:DeferredIncomeTaxAssetsNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">12,697</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--Assets_i01TI_pp0p0_mtAzAZ9_zW3Q14hyoMIi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt">Total Assets</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:Assets" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">51,587,192</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:Assets" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">39,551,270</ix:nonFraction></td><td style="padding-bottom: 2.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_40A_eus-gaap--LiabilitiesAbstract_iB_zgIxdNG1czNb" 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_403_eus-gaap--LiabilitiesCurrentAbstract_i01B_zth7HD3gi1k7" 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_409_eus-gaap--AccountsPayableCurrent_i02I_pp0p0_maLCzCBc_zNQaPmFvhWve" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Accounts payable</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">873,904</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="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></tr>
  <tr id="xdx_40E_eus-gaap--AccruedLiabilitiesCurrent_i02I_pp0p0_maLCzCBc_zPvRcZifahHg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">959,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: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></tr>
  <tr id="xdx_40B_eus-gaap--DeferredRevenueCurrent_i02I_pp0p0_maLCzCBc_zKYHsNoG0KMa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">387,763</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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">349,004</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--TaxesPayableCurrent_i02I_pp0p0_maLCzCBc_zqoO9CsxIXo2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,486,350</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="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></tr>
  <tr id="xdx_40A_eus-gaap--LinesOfCreditCurrent_i02I_pp0p0_maLCzCBc_zL6bY1WVqX4f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,818,591</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="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></tr>
  <tr id="xdx_40D_eus-gaap--OperatingLeaseLiabilityCurrent_i02I_pp0p0_maLCzCBc_z3fPPAreNiE6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">58,080</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="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 id="xdx_40B_eus-gaap--LongTermDebtCurrent_i02I_pp0p0_maLCzCBc_znhSNjkyh5i6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Current portion of long term debt (Note 12)</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:LongTermDebtCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">717,612</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: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">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LiabilitiesCurrent_i02TI_pp0p0_mtLCzCBc_maLzF1Z_zMo7jmWiWtG4" style="vertical-align: bottom; background-color: White">
    <td style="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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,302,156</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="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></tr>
  <tr id="xdx_40C_eus-gaap--OperatingLeaseLiabilityNoncurrent_i01I_pp0p0_maLzF1Z_zYkigoFKZN93" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">109,142</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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">139,552</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DeferredIncomeTaxLiabilitiesNet_i01I_pp0p0_maLzF1Z_zkmzkrdfF1V9" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: justify">Deferred income tax liability (Note 13)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,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: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></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebtNoncurrent_i01I_pp0p0_maLzF1Z_zovFpWxK2ny1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: justify; padding-bottom: 1.5pt">Long term debt (Note 12)</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:LongTermDebtNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,436,465</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:LongTermDebtNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,573,024</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--Liabilities_i01TI_pp0p0_mtLzF1Z_maLASEzSJx_z4sqwk8QeBKa" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Total Liabilities</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:Liabilities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,348,222</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:Liabilities" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,845,794</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>&#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--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_i01B_zosS432hdeIf" 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 16)</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--CommonStockValue_i02I_maSEzuUh_zHxaxuaunR2f" style="vertical-align: bottom; background-color: White">
    <td>Authorized: <span id="xdx_90F_eus-gaap--CommonStockSharesAuthorized_iI_pid_c20221231_zAwKBxo7W3Q2" title="Common stock, shares authorized"><span id="xdx_905_eus-gaap--CommonStockSharesAuthorized_iI_pid_c20211231_znoDbtUg75m9" title="Common stock, shares authorized"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2021-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_90B_eus-gaap--CommonStockParOrStatedValuePerShare_iI_pid_c20221231_zBQ6ydB8a4gk" title="Common stock, par value"><span id="xdx_90C_eus-gaap--CommonStockParOrStatedValuePerShare_iI_pid_c20211231_zziJinXLcQFi" title="Common stock, par value"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.001</ix:nonFraction></ix:nonFraction></span></span> each; <span id="xdx_90C_eus-gaap--PreferredStockSharesAuthorized_iI_pid_c20221231_z4vuW5DtLleb" title="Preferred stock, shares authorized"><span id="xdx_905_eus-gaap--PreferredStockSharesAuthorized_iI_pid_c20211231_zPDu21b05yJk" title="Preferred stock, shares authorized"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2021-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_90D_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_pid_c20221231_zfATGxrfxXhl" title="Preferred stock, par value"><span id="xdx_90F_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_pid_c20211231_zxqt4uSflAZd" title="Preferred stock, par value"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.01</ix:nonFraction></ix:nonFraction></span></span> each
    Issued and outstanding: <span id="xdx_909_eus-gaap--CommonStockSharesIssued_iI_pid_c20221231_zgmoWo2v8tZ5" title="Common stock, shares issued"><span id="xdx_90F_eus-gaap--CommonStockSharesOutstanding_iI_pid_c20221231_zezEaeQQbbu" title="Common stock, shares outstanding"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,426,260</ix:nonFraction></ix:nonFraction></span></span> (2021: <span id="xdx_90F_eus-gaap--CommonStockSharesIssued_iI_c20211231_zbQg0alHNY45" title="Common stock, shares issued"><span id="xdx_907_eus-gaap--CommonStockSharesOutstanding_iI_pid_c20211231_z5iqgDN90aZf" 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>) 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,426</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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,355</ix:nonFraction> </td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--CommonStockValue_i02I_maSEzuUh_z1I8VTPYI74d" style="font: 10pt Times New Roman, Times, Serif; display: none; vertical-align: bottom; background-color: White">
    <td>Capital stock (Note 16) 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,426,260 (2021: 12,355,246) 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,426</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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,355</ix:nonFraction> </td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_405_eus-gaap--AdditionalPaidInCapital_i02I_pp0p0_maSEzuUh_zQyKAJnx4vH1" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">17,523,345</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="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></tr>
  <tr id="xdx_40B_eus-gaap--AccumulatedOtherComprehensiveIncomeLossNetOfTax_i02I_pp0p0_maSEzuUh_z2G0So3uRATj" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">805,799</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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">775,730</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--RetainedEarningsAccumulatedDeficit_i02I_pp0p0_maSEzuUh_zgCvvepugnG1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Accumulated earnings</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:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">15,903,964</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:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,882,360</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--StockholdersEquity_i02TI_pp0p0_mtSEzuUh_maSEIPAz7wf_zAZtZuQzlyfa" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">32,633,936</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="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></tr>
  <tr id="xdx_40C_eus-gaap--MinorityInterest_i02I_pp0p0_maSEIPAz7wf_zfFQLOeMTPAe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Non-controlling interests (Note 17)</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:MinorityInterest" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,605,034</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:MinorityInterest" contextRef="AsOf2021-12-31" 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>
  <tr id="xdx_40D_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_i02TI_pp0p0_maLASEzSJx_mtSEIPAz7wf_zO5mabMiK4e3" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Total Stockholders&#8217; Equity</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:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">35,238,970</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:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">27,705,476</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LiabilitiesAndStockholdersEquity_i01TI_pp0p0_mtLASEzSJx_zMykkToaLSqd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt">Total Liabilities and Stockholders&#8217; Equity</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:LiabilitiesAndStockholdersEquity" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">51,587,192</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:LiabilitiesAndStockholdersEquity" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">39,551,270</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

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


<!-- Field: Page; Sequence: 18; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<table cellpadding="0" cellspacing="0" id="xdx_300_113_zUuTazktyT4h" 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; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20220101__20221231_zPnPcET6Jp73" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_490_20210101__20211231_zGf7zBwSsQw7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_maGPzwv8_zEj4q5dS4O5j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; font-weight: bold">Sales</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,840,469</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,416,335</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--CostOfGoodsAndServicesSold_msGPzwv8_z8U6Kk57zXkk" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; padding-bottom: 1.5pt">Cost of sales (Note 6, 7 &amp; 8)</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:CostOfGoodsAndServicesSold" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">31,971,596</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:CostOfGoodsAndServicesSold" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">23,019,824</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>&#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_400_eus-gaap--GrossProfit_iT_pp0p0_mtGPzwv8_maOILzYuR_zibvURHHs8h1" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Gross profit</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:GrossProfit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,868,873</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:GrossProfit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,396,511</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>&#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_407_eus-gaap--SalariesAndWages_i01_pp0p0_maOEzKCD_zn2ehZe1nhXc" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,537,783</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,321,285</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OfficersCompensation_i01_pp0p0_maOEzKCD_zbq8mdqiCHm7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,032,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:OfficersCompensation" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">883,460</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--GeneralInsuranceExpense_i01_pp0p0_maOEzKCD_zPzY7zetOQg6" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">683,272</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">581,187</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ProfessionalFees_i01_pp0p0_maOEzKCD_zNzKQJFMfJP6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">660,821</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">285,424</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--OtherGeneralExpense_i01_pp0p0_maOEzKCD_zlzMgBRdi5Lg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">350,126</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">269,459</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--Consulting_i01_pp0p0_maOEzKCD_znb2slpZah79" style="vertical-align: bottom; background-color: White">
    <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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">312,171</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">320,759</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--InterestExpense_i01_pp0p0_maOEzKCD_z46ye73lMdpg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">292,949</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:InterestExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">199,930</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--SellingAndMarketingExpense_i01_pp0p0_maOEzKCD_z9thrupHIWLg" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">182,609</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">172,185</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--InvestorRelationsAndTransferAgentFee_i01_pp0p0_maOEzKCD_zJFJDiatxAm6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">179,505</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">94,256</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--TravelAndEntertainmentExpense_i01_pp0p0_maOEzKCD_zggKg5tQfKA7" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">171,369</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">107,894</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--OperatingLeaseExpense_i01_pp0p0_maOEzKCD_zR31g73O1JRb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">149,446</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">382,663</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--ResearchAndDevelopmentExpense_i01_pp0p0_maOEzKCD_z46tT25m91Yg" style="vertical-align: bottom; background-color: White">
    <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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">99,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:ResearchAndDevelopmentExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">116,411</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--CommunicationsAndInformationTechnology_i01_pp0p0_maOEzKCD_z1cidlCmwkz1" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">42,098</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">45,482</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_ecustom--Commissions_i01_pp0p0_maOEzKCD_zKzyBAsDkyHh" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">30,732</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">62,632</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--UtilitiesOperatingExpense_i01_pp0p0_maOEzKCD_zRaJqDegwcgj" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">29,517</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">21,523</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--ShippingCost_i01_pp0p0_maOEzKCD_zMEfsKxpY8Y1" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">23,469</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">16,567</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--ForeignCurrencyTransactionGainLossBeforeTax_i01N_pp0p0_di_msOEzKCD_zJ7NsRsJP3qg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">23,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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">25,091</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ProvisionForDoubtfulAccounts_i01_pp0p0_maOEzKCD_z8gJtQxbZixd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Bad debt expense</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:ProvisionForDoubtfulAccounts" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">17,869</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:ProvisionForDoubtfulAccounts" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,979</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--OperatingExpenses_i01T_pp0p0_msOILzYuR_mtOEzKCD_z1gWFx7AKwMl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Total operating expenses</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:OperatingExpenses" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,818,496</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:OperatingExpenses" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,913,187</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OperatingIncomeLoss_iT_pp0p0_mtOILzYuR_maILFCOzbha_zVAkxsPt1sC6" style="vertical-align: bottom; background-color: White">
    <td style="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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,050,377</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,483,324</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--GainLossOnSaleOfLand_pp0p0_maILFCOzbha_zfReG1p46ysi" 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"><span style="-sec-ix-hidden: xdx2ixbrl0271">-</span></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:GainLossOnSaleOfLand" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">44,330</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--PppLoanForgiveness_pp0p0_maILFCOzbha_zIz0u2GYlxyd" 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"><span style="-sec-ix-hidden: xdx2ixbrl0274">-</span></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:PppLoanForgiveness" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">537,960</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--GainLossOnInvestments_maILFCOzbha_zHQdT0knHMvc" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">341,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:GainLossOnInvestments" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">507,143</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--GainOnAcquisition_maILFCOzbha_z3vK8De236i3" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Gain on previously held equity interest (Note 10)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:GainOnAcquisition" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">335,051</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"><span style="-sec-ix-hidden: xdx2ixbrl0281">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--InterestIncomeOther_maILFCOzbha_zUFuZLTAquLh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt">Interest income</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"><ix:nonFraction name="us-gaap:InterestIncomeOther" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">132,233</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">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:InterestIncomeOther" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">77,999</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_iT_pp0p0_mtILFCOzbha_maPLz13G_zAaHx4IMeEpf" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,859,085</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,650,756</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 13)</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_404_eus-gaap--DeferredIncomeTaxExpenseBenefit_i01N_di_msPLz13G_z87ZJrqpX7Ta" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Deferred income tax recovery (expense)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">71,295</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">363,317</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_ecustom--CurrentIncomeTaxExpenseBenefits_i01N_di_msPLz13G_zp5QCF6cn2D9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Current income tax expense</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="FSI:CurrentIncomeTaxExpenseBenefits" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">217,151</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="FSI:CurrentIncomeTaxExpenseBenefits" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,993,182</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--ProfitLoss_iT_mtPLz13G_maNILzr6x_zxyKIr0C67Y8" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Net income for the year</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:ProfitLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,713,229</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:ProfitLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,294,257</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_iN_di_msNILzr6x_zII6YNXK9sDa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Net income attributable to non-controlling interests</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:NetIncomeLossAttributableToNoncontrollingInterest" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">691,625</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:NetIncomeLossAttributableToNoncontrollingInterest" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">845,095</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--NetIncomeLoss_iT_mtNILzr6x_zzLweIVGgeE3" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Net income attributable to controlling interest</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:NetIncomeLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,021,604</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:NetIncomeLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,449,162</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>&#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_400_eus-gaap--EarningsPerShareBasic_pid_zrpTVZtM5XXe" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Income per share (basic) (Note 14)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.57</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:EarningsPerShareBasic" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.28</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EarningsPerShareDiluted_zs0noStPBOQe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Income per share (diluted) (Note 14)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.56</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:EarningsPerShareDiluted" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.28</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_z0NKJUeO0wpd" style="vertical-align: bottom; background-color: White">
    <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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,379,316</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,316,254</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_z70fc3kwwvn8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,466,415</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,505,522</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_408_eus-gaap--OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_iB_znPFu3nX3Sr8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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_401_eus-gaap--ProfitLoss_i01_maCINOTzSQJ_zH2WxhTi57Kf" style="vertical-align: bottom; background-color: White">
    <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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,713,229</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,294,257</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_i01_maCINOTzSQJ_zeQC5ffwhXb3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Unrealized gain (loss) on foreign currency transactions</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:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">30,069</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:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_i01T_maCINOTzGcR_mtCINOTzSQJ_maCINOTz1zj_zdJelylr9aTf" style="vertical-align: bottom; background-color: White">
    <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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,683,160</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,390,648</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest_i01N_pp0p0_di_msCINOTzGcR_msCINOTz1zj_zwZztkJyKn15" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Comprehensive income &#8211; non-controlling interest</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:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">691,625</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:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">845,095</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--ComprehensiveIncomeNetOfTax_i01T_pp0p0_mtCINOTz1zj_z257KbOqykM7" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt">Comprehensive income attributable to controlling interests</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:ComprehensiveIncomeNetOfTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,991,535</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:ComprehensiveIncomeNetOfTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,545,553</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

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

<table cellpadding="0" cellspacing="0" id="xdx_304_112_zgsAvZaZoRM4" 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; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20220101__20221231_z1gHl8EMjsmi" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231_zIvAfLL5rdUg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--NetCashProvidedByUsedInOperatingActivitiesAbstract_iB_zrg40iXipzxl" 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_40F_eus-gaap--ProfitLoss_i01_pp0p0_maNCPBUznz0_zED1YjLbT6Ni" style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; padding-left: 10pt">Net income for the year</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:ProfitLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,713,229</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:ProfitLoss" contextRef="From2021-01-012021-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></tr>
  <tr id="xdx_403_eus-gaap--AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_i01B" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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_40E_eus-gaap--ShareBasedCompensation_i02_pp0p0_maNCPBUznz0_zPuD2OLRPvy1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">399,148</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">210,112</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--DepreciationAndAmortization_i02_pp0p0_maNCPBUznz0_zC6pj4xbe9s5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,277,431</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">965,935</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--LeaseRightOfUseFinancing_i02_pp0p0_maNCPBUznz0_zPnArWdstqs4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,566</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="From2021-01-012021-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 id="xdx_40D_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_i02_pp0p0_maNCPBUznz0_znWW6QQfRyp3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">50,045</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">265,846</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--GainLossOnInvestments_i02N_pp0p0_di_msNCPBUznz0_zevEldolFlgj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 20pt">Gain on investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:GainLossOnInvestments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">341,424</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:GainLossOnInvestments" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">507,143</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--ProvisionForDoubtfulAccounts_i02_pp0p0_maNCPBUznz0_zsN47cUJOB8b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">Bad debt expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">17,869</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:ProvisionForDoubtfulAccounts" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,979</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredIncomeTaxExpenseBenefit_i02_pp0p0_maNCPBUznz0_zGVw3tcsuXid" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">71,295</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">363,317</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--GainLossOnSaleOfLand_i02N_pp0p0_di_msNCPBUznz0_zCZKBrOQlVwc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">Gain on sale of land</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0367">-</span></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:GainLossOnSaleOfLand" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">44,330</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40A_ecustom--GainOnAcquisitionOfSubsidiary_i02N_di_msNCPBUznz0_zuCYvpUCD1yd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 20pt">Gain on acquisition of ENP Peru, LLC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="FSI:GainOnAcquisitionOfSubsidiary" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">335,051</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0371">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--PaycheckProtectionProgramLoanForgiveness_i02N_di_msNCPBUznz0_zqqPh7HnjsYe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">PPP loan forgiveness</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0373">-</span></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:PaycheckProtectionProgramLoanForgiveness" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">537,960</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--IncreaseDecreaseInOperatingCapitalAbstract_i02B_zOdoEKXXYwx5" 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_40A_eus-gaap--IncreaseDecreaseInAccountsReceivable_i03N_pp0p0_di_msNCPBUznz0_zVzLR8ZHeFtl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,338,397</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,246,495</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_402_eus-gaap--IncreaseDecreaseInInventories_i03N_pp0p0_di_msNCPBUznz0_zZLwuYhHs16" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 20pt">Increase 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,124,022</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,275,746</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_402_eus-gaap--IncreaseDecreaseInPrepaidExpense_i03N_pp0p0_di_msNCPBUznz0_z29z7KnV63V8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">Decrease (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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">131,864</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:IncreaseDecreaseInPrepaidExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">139,714</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_i03_maNCPBUznz0_zyxvtKeM7yG8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">700,191</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:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">102,856</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--IncreaseDecreaseInAccruedIncomeTaxesPayable_i03_pp0p0_maNCPBUznz0_zOXBuxHxvBvg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">249,628</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:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,021,048</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--IncreaseDecreaseInContractWithCustomerLiability_i03_pp0p0_maNCPBUznz0_zdPMEsvdSsu7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 20pt">Increase in deferred revenue</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:IncreaseDecreaseInContractWithCustomerLiability" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">38,759</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:IncreaseDecreaseInContractWithCustomerLiability" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">34,727</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--NetCashProvidedByUsedInOperatingActivities_i01T_pp0p0_maCCERCzv69_mtNCPBUznz0_zFtW6YpFJUp6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Cash provided by operating activities</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:NetCashProvidedByUsedInOperatingActivities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,476,903</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:NetCashProvidedByUsedInOperatingActivities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,535,746</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--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_40E_eus-gaap--PaymentsToAcquireInvestments_i01N_pp0p0_di_msNCPBUzRUX_z8U1ZWpKu4Sb" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Purchase of investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0403">-</span></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:PaymentsToAcquireInvestments" contextRef="From2021-01-012021-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_400_eus-gaap--ProceedsFromSaleOfEquityMethodInvestments_i01_pp0p0_maNCPBUzRUX_zXRUX3Lwwdod" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">265,001</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">359,300</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--PaymentsToAcquireBusinessesNetOfCashAcquired_i01N_pp0p0_di_msNCPBUzRUX_zy6OMMFeYD7c" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Acquisition of ENP Peru, LLC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">499,329</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0410">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--ProceedsFromSaleOfOtherPropertyPlantAndEquipment_i01_pp0p0_maNCPBUzRUX_z7IG8tXCVKKf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Sale of property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0412">-</span></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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">263,380</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_i01N_pp0p0_di_msNCPBUzRUX_zUlzeTZTXlZd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Purchase of property and equipment</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:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,981,307</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:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">782,219</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--NetCashProvidedByUsedInInvestingActivities_i01T_pp0p0_maCCERCzv69_mtNCPBUzRUX_zaAtt0rAwKJf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Cash used in investing activities</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:NetCashProvidedByUsedInInvestingActivities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">2,215,635</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:NetCashProvidedByUsedInInvestingActivities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">659,539</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-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: rgb(204,238,255)">
    <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_409_eus-gaap--ProceedsFromRepaymentsOfLinesOfCredit_i01_pp0p0_maNCPBUzLRF_zKPRJHuCMfRe" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Advance 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">517,772</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">184,746</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RepaymentsOfLongTermDebt_i01N_pp0p0_di_msNCPBUzLRF_zTUE8vAra7y6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,292,819</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">943,080</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--ProceedsFromIssuanceOfLongTermDebt_i01_pp0p0_maNCPBUzLRF_zuQl2zRmoaE2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Proceeds 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:ProceedsFromIssuanceOfLongTermDebt" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,230,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"><span style="-sec-ix-hidden: xdx2ixbrl0431">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--PaymentsOfFinancingCosts_i01N_pp0p0_di_msNCPBUzLRF_z89x5jo3T1Bl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">58,611</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">287,903</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--PaymentsToMinorityShareholders_i01N_pp0p0_di_msNCPBUzLRF_zYVIi5G3Diba" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">689,434</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">804,003</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--ProceedsFromIssuanceOfCommonStock_i01_maNCPBUzLRF_z0hwZXTj5C1j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Sale of common stock</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:ProceedsFromIssuanceOfCommonStock" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,620</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:ProceedsFromIssuanceOfCommonStock" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,440</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--NetCashProvidedByUsedInFinancingActivities_i01T_pp0p0_maCCERCzv69_mtNCPBUzLRF_zjpJheUKMVrl" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1.5pt">Cash provided by (used in) financing activities</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:NetCashProvidedByUsedInFinancingActivities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">848,326</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:NetCashProvidedByUsedInFinancingActivities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">1,709,800</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>&#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--EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_maCCERCzv69_zR44zQm0kYNb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Effect of exchange rate changes on cash</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:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">30,069</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:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</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>&#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_40B_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_iT_mtCCERCzv69_zniQG5jJLyrd" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Inflow 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">79,525</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,262,798</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iS_pp0p0_zYTG5RfPvQ94" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Cash resources, beginning</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,735,574</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,472,776</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_403_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iE_pp0p0_zZDwUSjEseu1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 1.5pt">Cash resources, ending</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,815,099</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,735,574</ix:nonFraction></td><td style="padding-bottom: 1.5pt; 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_40B_eus-gaap--Cash_iE_z2OkQc8v8kL2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Cash" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,115,099</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:Cash" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,710,227</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--ShortTermInvestments_iE_pp0p0_zKXstBj4aUhj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Term deposits</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:ShortTermInvestments" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">700,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:ShortTermInvestments" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,025,347</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iE_pp0p0_zZINnBmjHQic" 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">Cash resources</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,815,099</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,735,574</ix:nonFraction></td><td style="padding-bottom: 1.5pt; 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"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">158,966</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="-sec-ix-hidden: xdx2ixbrl0473">-</span></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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">292,949</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">179,029</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--InventoryAdditionsInAccountsPayableAndAccruedLiabilities_i01_pp0p0_zfQbLK55U6Ja" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Inventory additions in accounts payable and accrued liabilities</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="FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">793,403</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="FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">250,923</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

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

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

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

<table cellpadding="0" cellspacing="0" id="xdx_308_114_znyTlRxZLhSe" 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">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Shares</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_4BC_us-gaap--StatementEquityComponentsAxis_us-gaap--CommonStockMember_zOteehOj69le" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Par Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_4BB_us-gaap--StatementEquityComponentsAxis_custom--CapitalInExcessOfParValueMember_zMehjLbYjnj6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Capital in<br /> Excess of<br /> Par Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_4BA_us-gaap--StatementEquityComponentsAxis_us-gaap--RetainedEarningsMember_zBH9G9Sr5lse" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Accumulated<br /> Earnings</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_4B0_us-gaap--StatementEquityComponentsAxis_us-gaap--AccumulatedOtherComprehensiveIncomeMember_zvXMZirktzf8" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Other<br /> Comprehensive<br /> Income</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_4BE_us-gaap--StatementEquityComponentsAxis_us-gaap--ParentMember_zoYJ1jQDJau4" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_4BF_us-gaap--StatementEquityComponentsAxis_us-gaap--NoncontrollingInterestMember_zjqZsykfVBfi" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Non-<br /> Controlling<br /> Interests</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_4B5_zYtUxVrjxuQ" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total<br /> Stockholders&#8217;<br /> Equity</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#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><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 id="xdx_43C_c20210101__20211231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iS_zSFBHrB6aMte" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; font-weight: bold">Balance December 31, 2020</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--SharesOutstanding_iS_pid_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zLqTdnXy2qt5" title="Balance, shares" style="width: 5%; font-weight: bold; text-align: right"><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></td><td style="width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">$</td><td style="width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,261</ix:nonFraction></td><td style="width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">$</td><td style="width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">16,633,190</ix:nonFraction></td><td style="width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">$</td><td style="width: 5%; font-weight: bold; text-align: right"><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></td><td style="width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">$</td><td style="width: 5%; font-weight: bold; text-align: right">(<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></td><td style="width: 1%; font-weight: bold; text-align: left">)</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">$</td><td style="width: 5%; font-weight: bold; text-align: right"><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></td><td style="width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">$</td><td style="width: 5%; font-weight: bold; text-align: right"><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></td><td style="width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold">&#160;</td>
    <td style="width: 1%; font-weight: bold; text-align: left">$</td><td style="width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">23,768,279</ix:nonFraction></td><td style="width: 1%; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_zM3cqaUYgrXb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Translation adjustment</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"><span style="-sec-ix-hidden: xdx2ixbrl0491">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0492">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0493">&#8212;</span></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:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</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:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</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"><span style="-sec-ix-hidden: xdx2ixbrl0496">&#8212;</span></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:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,391</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--ProfitLoss_zLGUz3IH0p62" 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">&#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"><span style="-sec-ix-hidden: xdx2ixbrl0499">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0500">&#8212;</span></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:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" 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="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0502">&#8212;</span></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:ProfitLoss" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" 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="text-align: left">&#160;</td><td style="text-align: right"><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></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:ProfitLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,294,257</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--StockIssuedDuringPeriodValueNewIssues_zUwMR5GH8YI2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Common stock issued</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zPdFAGpGdAAc" title="Common stock issued, shares" style="text-align: right"><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></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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">94</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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,346</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"><span style="-sec-ix-hidden: xdx2ixbrl0509">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0510">&#8212;</span></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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,440</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"><span style="-sec-ix-hidden: xdx2ixbrl0512">&#8212;</span></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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,440</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_zQ9OL4Sb12V7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Distributions to noncontrolling interests</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"><span style="-sec-ix-hidden: xdx2ixbrl0517">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0518">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0519">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0520">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0521">&#8212;</span></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:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" 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:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">804,003</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_401_eus-gaap--AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_zy2suYuAFdWl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Stock-based compensation</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">&#8212;</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"><span style="-sec-ix-hidden: xdx2ixbrl0525">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><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></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"><span style="-sec-ix-hidden: xdx2ixbrl0527">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0528">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><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></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"><span style="-sec-ix-hidden: xdx2ixbrl0530">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">210,112</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_43D_c20220101__20221231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iS_zR5ph8lxwV16" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Balance December 31, 2021</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--SharesOutstanding_iS_pid_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_z6YUMWwc8Kal" title="Begning  balance, shares" style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,355</ix:nonFraction></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">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">16,983,648</ix:nonFraction></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">$</td><td style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right">(<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></td><td style="font-weight: bold; text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">27,705,476</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_43F_c20220101__20221231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iS_z3pIwKF0ykaj" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Balance</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--SharesOutstanding_iS_pid_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zM2jhsTH88j8" title="Balance, shares" style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,355</ix:nonFraction></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">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">16,983,648</ix:nonFraction></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">$</td><td style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right">(<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></td><td style="font-weight: bold; text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right"><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></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">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">27,705,476</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
<tr id="xdx_40F_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Translation adjustment</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"><span style="-sec-ix-hidden: xdx2ixbrl0553">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0554">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0555">&#8212;</span></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:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">30,069</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:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2022-01-012022-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">30,069</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0558">&#8212;</span></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:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">30,069</ix:nonFraction></td><td style="text-align: left">)</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">Net income</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"><span style="-sec-ix-hidden: xdx2ixbrl0561">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0562">&#8212;</span></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:ProfitLoss" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,021,604</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"><span style="-sec-ix-hidden: xdx2ixbrl0564">&#8212;</span></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:ProfitLoss" contextRef="From2022-01-012022-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,021,604</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:ProfitLoss" contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">691,625</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:ProfitLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,713,229</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--StockIssuedDuringPeriodValueNewIssues_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Common stock issued</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zIe0oghiA5ac" title="Common stock issued, shares" style="text-align: right"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">71,014</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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">71</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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,549</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"><span style="-sec-ix-hidden: xdx2ixbrl0571">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0572">&#8212;</span></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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2022-01-012022-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,620</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"><span style="-sec-ix-hidden: xdx2ixbrl0574">&#8212;</span></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:StockIssuedDuringPeriodValueNewIssues" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">140,620</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_pp0p0_di_zhwhBj0MMajf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Distributions to noncontrolling interests</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"><span style="-sec-ix-hidden: xdx2ixbrl0579">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0580">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0581">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0582">&#8212;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0583">&#8212;</span></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:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">689,434</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:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">689,434</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Stock-based compensation</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">&#8212;</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"><span style="-sec-ix-hidden: xdx2ixbrl0587">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">399,148</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"><span style="-sec-ix-hidden: xdx2ixbrl0589">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0590">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2022-01-012022-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">399,148</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"><span style="-sec-ix-hidden: xdx2ixbrl0592">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">399,148</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_437_c20220101__20221231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iE_zEFb53NDrIl2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance December 31, 2022</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--SharesOutstanding_iE_pid_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zBcMsHDY9hw6" title="Ending balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,426,260</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,426</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">17,523,345</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">15,903,964</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">805,799</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">32,633,936</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,605,034</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">35,238,970</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_433_c20220101__20221231_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_iE_zzgfLpAMtENg" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--SharesOutstanding_iE_pid_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_ztBTyPz10Qak" title="Balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,426,260</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,426</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_custom_CapitalInExcessOfParValueMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">17,523,345</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">15,903,964</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">805,799</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_ParentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">32,633,936</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,605,034</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">35,238,970</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
</table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><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; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="Z_006"></span>FLEXIBLE
SOLUTIONS INTERNATIONAL, INC.<br />
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS<br />
December 31, 2022 and 2021</b></span></p>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock"><p id="xdx_807_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_z45Rge9nNb4c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>1.
<span>Basis of Presentation</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. </span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_829_zljdzL11lUjg" style="display: none; font-family: Times New Roman, Times, Serif">BASIS
OF PRESENTATION</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;&#160;</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
consolidated financial statements (&#8220;consolidated financial statements&#8221;) 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.,
its 97% controlling interest in ENP Peru Investments LLC (&#8220;ENP Peru&#8221;) and its <span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpInvestmentsLlcAndEnpMendotaMember_zqUdhlwfgce2" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2022-01-012022-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; 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; 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_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember_zxBCwElOH0ea" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember" 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_90E_eus-gaap--BusinessCombinationConsiderationTransferred1_pp0p0_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember_zh6RtWdCaqk9" title="Purchase price"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,110,560</ix:nonFraction></span>. An unrelated
party owns the remaining <span id="xdx_905_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zW2d5qujsE89" 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_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MinimumMember_znVpeDh9Un7k" 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_907_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MaximumMember_zgp4GYOEpc7h" 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
2022, NanoChem purchased an additional <span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zLmIIdFV9fQb" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2022-01-012022-12-31_custom_EnpPeruMember_custom_UnrelatedPartyMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% in ENP Peru, increasing its share to <span id="xdx_900_ecustom--IncreaseDecreaseInSharePercentage_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_z7tNfAo7BTB" title="Increase decrease in share percentage"><ix:nonFraction name="FSI:IncreaseDecreaseInSharePercentage" contextRef="From2022-01-012022-12-31_custom_EnpPeruMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">91.67</ix:nonFraction></span>%. ENP Investments owns the remaining <span id="xdx_907_ecustom--RemainingInvestmentOwnedPercentage_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_ztZW8HIiYID" title="Remaining investment owned percentage"><ix:nonFraction name="FSI:RemainingInvestmentOwnedPercentage" contextRef="From2022-01-012022-12-31_custom_EnpPeruMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">8.33</ix:nonFraction></span>%, of
which the Company has a <span id="xdx_907_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_ziji1DBYjeoe" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2022-01-012022-12-31_custom_EnpPeruMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% interest. ENP Peru was previously accounted for under the equity method however, is now consolidated into
the financial statements from the date control was obtained. The <span id="xdx_903_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpPeruMember_z9oGO3r1DlCd" title="Minority interest ownership percentage by parent"><ix:nonFraction name="us-gaap:MinorityInterestOwnershipPercentageByParent" contextRef="AsOf2022-12-31_custom_EnpPeruMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>% non-controlling interest portion of the 8.33% held by ENP Investments
is included in non-controlling interests in these consolidated financial statements.</span></p>

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


<ix:exclude><!-- 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 -->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"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:SignificantAccountingPoliciesTextBlock"><p id="xdx_808_eus-gaap--SignificantAccountingPoliciesTextBlock_zlcpZVOjF64c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>2.
<span>Significant Accounting Policies</span>. </b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock"><p id="xdx_84C_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zazRiQrOtSdl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
<i><span id="xdx_863_zKcF4dgaJPMb">Cash and Cash Equivalents</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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="From2022-01-01to2022-12-31" escape="true" name="FSI:TermDepositsPolicyTextBlock"><p id="xdx_843_ecustom--TermDepositsPolicyTextBlock_z0egtWF4e6kd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
<i><span id="xdx_86B_z1oQH8A1LHMk">Term Deposits</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
deposits maintained by the Company with banks comprises term deposits. The Company has two term deposits, the first for $<span id="xdx_909_eus-gaap--Deposits_iI_c20221231_zhlpEQpH0bwb" title="Deposit"><ix:nonFraction name="us-gaap:Deposits" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">700,000</ix:nonFraction></span>
that matures in 2023 and pays interest at a rate of <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231_z7aSS1v1inqe" title="Debt interest rate"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">3.0</ix:nonFraction></span>%.
If withdrawn before maturity, the greater of the loss of accrued interest or $<span id="xdx_905_eus-gaap--InterestPayableCurrentAndNoncurrent_iI_c20221231_zp3VpQbjVBL5" title="Accured interest"><ix:nonFraction name="us-gaap:InterestPayableCurrentAndNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150</ix:nonFraction></span>,
plus 1% of the principal shall be levied. The other term deposit for $<span id="xdx_90B_ecustom--OtherTermDeposit_iI_c20221231_zWMzSzrnxkE" title="Other term deposit"><ix:nonFraction name="FSI:OtherTermDeposit" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">300,000</ix:nonFraction></span>
pays 1.3% interest, matures in 2023 and can be withdrawn by the Company at any point without prior notice or penalty on the
principal.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:InventoryPolicyTextBlock"><p id="xdx_842_eus-gaap--InventoryPolicyTextBlock_zeaVgjM50V31" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)
<i><span id="xdx_862_zPjRTXgGmRE2">Inventories and Cost of Sales</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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. Cost is determined on a first-in, first-out basis or weighted average cost
formula 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 (2022 - $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_ze7gYqt712ac" title="Sales"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-012022-12-31_us-gaap_ShippingAndHandlingMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">433,015</ix:nonFraction></span>; 2021 - $<span id="xdx_90F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zZfdPWsbvrE" title="Sales"><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>). Shipping and handling costs
incurred are included in cost of goods sold (2022 - $<span id="xdx_908_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zh3H76QAZxt1" title="Cost of sales"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2022-01-012022-12-31_us-gaap_ShippingAndHandlingMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">913,890</ix:nonFraction></span>; 2021 - $<span id="xdx_90A_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zy87PLGBULC8" title="Cost of sales"><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>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy"><p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_ziGSUbSIY0oh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(d)
<i><span id="xdx_862_zCf4zWhAYy13">Allowance for Doubtful Accounts</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock"><p id="xdx_845_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_zmApyTRZLNK5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(e)
<i><span id="xdx_86D_zn84cbk4eIkj">Property, Equipment, Leaseholds and Intangible Assets</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="FSI:ScheduleOfMethodOfDepreciationTableTextBlock"><p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_zOH9hl7J6SRe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B0_zXclfCEmLkR4" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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: 80%; 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: 49%"><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: 49%"><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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_ztRd9ikOnKV9" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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">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_901_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z77p6PImsJ0j" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zo32bFiXs3gh" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zNMzEAb7yOY4" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zPWqBDoMbVv" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_BuildingAndBuildingImprovementsMember" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zXC5UmZH81J9" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zCjKXAFyZ23f" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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_907_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_z4RuVp7DBong" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zxoxGw8w76z" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z1XrN8TFIK1l" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-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 </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_903_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--CustomerRelationshipsMember_zQGyUOKauyUb" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_CustomerRelationshipsMember" 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
    </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_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareMember_zMsy4SHmjndg" title="Depreciation method used and annual rate"><ix:nonNumeric contextRef="From2022-01-012022-12-31_custom_SoftwareMember" 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_8AC_zx2MO2p9RHvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 -->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"><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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"><p id="xdx_84D_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zOk0PIZVKmLl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(f)
<i><span id="xdx_86B_zymt0U4CtS8a">Impairment of Long-Lived Assets</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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>Property, Plant and Equipment</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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"><p id="xdx_845_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_z0Vioh4spxeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(g)
<i><span id="xdx_867_zgWr1WjPiyr9">Foreign Currency</span></i>.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock"><p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zx9nyMvM2uC2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(h)
<i><span id="xdx_86E_zqtTMryuchT5">Revenue Recognition</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
18.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="FSI:StockIssuedInExchangeForServicesPolicyTextBlock"><p id="xdx_846_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zxTgKl7lUTH1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(i)
<i><span id="xdx_864_z2VJsu9smxM7">Stock Issued in Exchange for Services</span></i>.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:CompensationRelatedCostsPolicyTextBlock"><p id="xdx_845_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zKZA4jCplGwh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(j)
<i><span id="xdx_868_zH3DgkOzs263">Stock-based Compensation</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; 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; 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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ComprehensiveIncomePolicyPolicyTextBlock"><p id="xdx_844_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zlxCLSa6fOmb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(k)
<i><span id="xdx_86E_zy1cTJIDrKEf">Other Comprehensive Income</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 related to the translation of subsidiaries&#8217; functional currency into the reporting currency.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:EarningsPerSharePolicyTextBlock"><p id="xdx_84D_eus-gaap--EarningsPerSharePolicyTextBlock_zY3jIEuSS1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(l)
<i><span id="xdx_86A_z8ck7T4gSKEl">Income Per Share</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 the years ended December
31, 2022 and 2021.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:UseOfEstimates"><p id="xdx_846_eus-gaap--UseOfEstimates_zrumup7AyQik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(m)
<i><span id="xdx_86C_z8sTHA7m8L2l">Use of Estimates</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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; 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; 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; 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; 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; 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, 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 and the valuation of inventory.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:FairValueOfFinancialInstrumentsPolicy"><p id="xdx_843_eus-gaap--FairValueOfFinancialInstrumentsPolicy_zIjCAySF2sb4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(n)
<i><span id="xdx_867_zm6IdG6A2nvb">Fair Value of Financial Instruments</span>.</i></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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"><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"><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"><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">&#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"><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">&#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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of cash, 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; 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; 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 approximate 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; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:CommitmentsAndContingenciesPolicyTextBlock"><p id="xdx_84A_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zjbHjtvyr5C5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zet6bHsrErGg">Contingencies</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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. The Company is not aware of any contingencies at the date of these consolidated financials statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:IncomeTaxPolicyTextBlock"><p id="xdx_842_eus-gaap--IncomeTaxPolicyTextBlock_zZMgNq2KcDNe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(p)
<i><span id="xdx_866_zoxYsO3rEui4">Income Taxes</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 computed by multiplying the Company&#8217;s <span style="font-family: Times New Roman, Times, Serif">taxable
</span>net income by the Company&#8217;s effective tax rates. Deferred income tax assets and liabilities are recognized for the future tax consequences
attributable to differences between the <span>consolidated</span> financial statement carrying amounts of existing
assets and liabilities and their respective tax bases, and operating loss carry-forwards, <span>if any</span>. Deferred
income 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 income tax assets and liabilities of a change in
tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to reduce the carrying
amount of deferred income tax assets if it is considered more likely than not that some portion, or all, of the deferred income tax assets
will not be realized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 740, <i>Income taxes</i> (ASC 740) 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, 2022, 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"><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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ConcentrationRiskCreditRisk"><p id="xdx_846_eus-gaap--ConcentrationRiskCreditRisk_z7zMXGIcafY9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zfVzWjpTjH75">Risk Management</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; margin: 0pt; 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_905_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zzsCVFT5YIm5" title="Sales"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-012022-12-31_custom_ThreePrimaryCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">27,775,617</ix:nonFraction></span>
(<span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_z0EDxo9FgWEl" title="Accounts receivable, after allowance for credit loss"><ix:nonFraction name="FSI:ConcentrationRiskThresholdPercentage" contextRef="From2022-01-012022-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">61</ix:nonFraction></span>%) for the year ended December 31, 2022 (2021 - $<span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zuRfBH2lIaQ5" title="Sales"><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> or <span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zwe1PI7n21j" title="Accounts receivable, after allowance for credit loss"><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>%). Accounts receivable for the Company&#8217;s three primary customers
totaled $<span id="xdx_904_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z0Glx4WSJjMl" title="Accounts receivable, after allowance for credit loss"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2022-12-31_custom_ThreePrimaryCustomersMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">6,124,424</ix:nonFraction></span> (<span id="xdx_907_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zwBakjUGHaxf" title="Accounts receivable, after allowance for credit loss, percentage"><ix:nonFraction name="FSI:ConcentrationRiskThresholdPercentage" contextRef="From2022-01-012022-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>%) at December 31, 2022 (2021 - $<span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z6NIde61G83j" 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> or <span id="xdx_90C_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkW2vXSnAjQg" title="Accounts receivable, after allowance for credit loss, percentage"><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>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
credit risk on cash is limited because the Company limits its exposure to credit loss by placing its cash 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; 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; 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; 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; 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, 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; 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; 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; 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; 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; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:EquityMethodInvestmentsPolicy"><p id="xdx_845_eus-gaap--EquityMethodInvestmentsPolicy_zETmP5gP4c4f" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(r)
<i><span id="xdx_861_zn4gwZImqwM4">Equity Method Investment</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_904_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20220101__20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--InvestmentMember_zZ3qzx6VNFu2" title="Equity method investment, description"><ix:nonNumeric contextRef="From2022-01-012022-12-31_custom_InvestmentMember" 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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock"><p id="xdx_844_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_ziV4ZDSAspjh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(s)
<i><span id="xdx_867_zHsFqoWjWKGc">Goodwill and Intangible Assets</span>.</i></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><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; 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.
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; 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; 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 350, <i>Intangibles &#8211; Goodwill and Other, </i>(ASC 350), qualitative assessments of goodwill
and indefinite-lived intangible assets were performed in 2022 and 2021. 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 amounts. 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, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"><p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zjXTjhs11Tvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(t)
<i><span id="xdx_863_zAjxh6jBNKZ">Recent Accounting Pronouncements</span>.</i></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_859_zawBq1LmDMvh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:LesseeOperatingLeasesTextBlock"><p id="xdx_80C_eus-gaap--LesseeOperatingLeasesTextBlock_zmko7BGbFVE3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>3.
<span>Leases</span> </b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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-long term 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_90B_eus-gaap--LesseeOperatingLeaseDiscountRate_iI_pid_dp_uPure_c20221231_zvu0FpaZW3W9" title="Operating leases discount rate"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseDiscountRate" contextRef="AsOf2022-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; 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: 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 -->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"><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; 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="From2022-01-01to2022-12-31" escape="true" name="FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock"><p id="xdx_894_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_zjqrXHh7ecy1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zcWt63vyDvj8" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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; border-collapse: collapse; width: 90%; margin-left: 0.5in">
  <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>&#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: 80%">Balance at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zl3Y5Y19Mgy5" title="Right of use assets, beginning balance" style="width: 16%; 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="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">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_98C_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zQCW8HHk5T1d" title="Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" contextRef="From2021-01-012021-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_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20220101__20221231_zkrTKUxdLIP7" title="Right of use assets, beginning 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 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_988_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20220101__20221231_zq2GCT1M9pS2" title="Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">50,045</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">Balance at December 31, 2022</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--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20220101__20221231_zlYyfgjB8St2" title="Right of use assets, ending balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">167,222</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>&#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, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_zHQL6BaeDfzd" title="Lease liability, beginning 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: White">
    <td style="text-align: left">Lease interest expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_ziy6LuuHcDtg" title="Lease interest expense" style="text-align: right"><ix:nonFraction name="FSI:LeaseInterestExpense" contextRef="From2021-01-012021-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: 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_c20210101__20211231_z54seAXcsdL1" title="Payments" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeasePayments" contextRef="From2021-01-012021-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: White">
    <td>Balance at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20220101__20221231_zPlddSdIbac9" title="Lease liability, beginning balance" style="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="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_984_ecustom--LeaseInterestExpense_pp0p0_c20220101__20221231_z6rENlYxm7l6" title="Lease interest expense" style="text-align: right"><ix:nonFraction name="FSI:LeaseInterestExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,566</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_981_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20220101__20221231_zLtu4CyVNwYc" title="Payments" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingLeasePayments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">58,611</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, 2022</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_c20220101__20221231_zGrPmdQqEocj" title="Lease liability, ending balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">167,222</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_980_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20221231_zbRRLRIuZAy5" title="Short-term portion" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">58,080</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_98C_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20221231_z9W7PIl57Rod" title="Long-term portion" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">109,142</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_984_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20221231_zpORKgkyLf1l" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">167,222</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock"><p id="xdx_892_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zPZhutpoW4bl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zCKzwPUm0Rzi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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="font: 10pt Times New Roman, Times, Serif; display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_498_20221231_zSKidC56c3Rl" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_z2KtkfZZ7Xz" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: justify">2023</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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">58,080</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zQxB1PGW33V3" style="vertical-align: bottom; background-color: White">
    <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:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">59,520</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zj4Yai8HEZw5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">61,020</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_zldNHSLP7ba8" style="vertical-align: bottom; background-color: White">
    <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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">178,620</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_z590Af5dIow9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">11,398</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: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">Lease liability, December 31, 2022</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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">167,222</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A2_zZtVrMuNAjxc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:FinancingReceivablesTextBlock"><p id="xdx_80E_eus-gaap--FinancingReceivablesTextBlock_zZU5T8DTn8Ec" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>4.
<span>Accounts Receivable <span id="xdx_829_zLaPJZlkdwhh" style="display: none; font-family: Times New Roman, Times, Serif">ACCOUNTS
RECEIVABLE</span></span> </b></span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock"><p id="xdx_896_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_z1gCTWL1Qtn5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zgNdG9PP2wr5" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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_20221231_zaE2ZofO2zGb" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20211231_zcXC0Rt4it1h" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_407_eus-gaap--AccountsReceivableGross_iI_pp0p0_maAANRNzCGO_maAANRNzPjC_z2kAp2mbcu19" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Accounts receivable</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:AccountsReceivableGross" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,739,150</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: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></tr>
  <tr id="xdx_407_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_iNI_pp0p0_di_msAANRNzCGO_msAANRNzPjC_zMGyNvd1haA7" 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">289,293</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="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></tr>
  <tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_iTI_pp0p0_mtAANRNzPjC_zUgrRJlWSYHf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; 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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,449,857</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="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></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A9_zUTbvaDHlzCl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif">&#160;</span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:InventoryDisclosureTextBlock"><p id="xdx_807_eus-gaap--InventoryDisclosureTextBlock_zgHNBrVWiZo4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>5.
<span>Inventories <span id="xdx_820_zkxCnVkensYc" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">INVENTORIES</span></span> </b></span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock"><p id="xdx_890_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zIoUdUc2KOJ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BC_zilafhaBzqWi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">SCHEDULE
OF INVENTORY</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_494_20221231_zpOxREueT87a" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20211231_zFULKKzCkJI7" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_404_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_maINzkLt_z3J51jildvJf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Completed goods</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:InventoryFinishedGoods" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,806,646</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: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></tr>
  <tr id="xdx_40B_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_maINzkLt_zMIqCcIWksH2" style="vertical-align: bottom; background-color: White">
    <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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,612,784</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="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></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzkLt_zxS9n61hmpb9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total
    inventory</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:InventoryNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">14,419,430</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="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></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A0_zE5Zj2Q9YSnb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock"><p id="xdx_80E_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_z2UYtFfUbSD5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>6.
<span><span>Property, Equipment and Leaseholds <span style="font: small-caps 10pt Times New Roman, Times, Serif; display: none"><b><span id="xdx_829_zXHjYVcu0lwa">PROPERTY,
PLANT &amp; EQUIPMENT</span></b></span></span></span> </b></span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentTextBlock"><p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zAIBDiMBAgve" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zWIKVDqGZY2d" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentGross_iI_zWCIGsgTOmhc" style="text-align: center">2022</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_487_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_zi7gF1xWQe59" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_481_eus-gaap--PropertyPlantAndEquipmentNet_iI_zRWFa8F88ICk" style="text-align: center">2022</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 id="xdx_41A_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zCWhLlFY4rll" 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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,775,629</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,310,920</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:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,464,709</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_414_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zOkvXmjkLui9" style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">107,055</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="AsOf2022-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">89,200</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zU6sAHYNlCQ" 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 style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">43,432</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">42,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:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">769</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41D_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zieXsgtyzHy8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">133,280</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">112,782</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="AsOf2022-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">20,498</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_410_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHYL0hDWPrLe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,634,063</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,891,736</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="AsOf2022-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,742,327</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDGqI3u5ilgh" style="vertical-align: bottom; background-color: White">
    <td>Trailers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,857</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,592</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="AsOf2022-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,265</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41F_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zQm1Nk7ArgH7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">27,907</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="AsOf2022-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,493</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zTfQFn9mS3Yk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0843">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_412_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zTaf8Ekx3f3l" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">100,860</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">100,860</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"><span style="-sec-ix-hidden: xdx2ixbrl0846">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41B_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zTExOTaW9TB5" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_LandMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">384,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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0848">&#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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31_us-gaap_LandMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">384,027</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">&#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_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231_z308nsRf9g4l" title="Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">18,399,675</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_98A_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20221231_z2lYeZlsD60h" title="Accumulated Depreciation" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,690,387</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_iI_c20221231_zPsFc33YTw33" title="Property, plant and equipment, net, total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">9,709,288</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"><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 -->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"><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"><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" id="xdx_485_eus-gaap--PropertyPlantAndEquipmentGross_iI_zcY6qmJKnMx2" style="text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_482_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_z0ABppyZ7Ce9" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentNet_iI_zY6M8BveDuj9" 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 id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zxTx0PfHaq23" 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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember" format="ixt:numdotdecimal" decimals="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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember" format="ixt:numdotdecimal" decimals="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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,840,119</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_411_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zoUtZRMclXb8" style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_AutomobilesMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">124,997</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z4mbAZ1ZGCfa" 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 style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_ComputerEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,149</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_416_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_z3acbxnX0Ok3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">132,530</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">107,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="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,274</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHEretU9iWSg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_us-gaap_MachineryAndEquipmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,696,100</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_412_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zpeGtUeNODk6" style="vertical-align: bottom; background-color: White">
    <td>Trailers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_custom_TrailerMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,931</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41A_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zBmIoeXCRva2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31_custom_BoatMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,116</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_410_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zNZ25CQ3wzv6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0879">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zbUWCBEDB1dl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0882">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zBrHzBx3d7Z4" style="vertical-align: bottom; background-color: White">
    <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 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" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0884">&#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 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" 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: 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">$</td><td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20211231_z6Q3QgstkiHl" 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" 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_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20211231_zMLf7YF5ImYk" 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" 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_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_c20211231_zauqqEkkXNuh" 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" unitRef="USD">4,931,713</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; text-align: justify; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of depreciation expense for 2022: $<span id="xdx_907_eus-gaap--Depreciation_pp0p0_c20220101__20221231_zlkLLew0qkE2" title="Depreciation"><ix:nonFraction name="us-gaap:Depreciation" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,103,732</ix:nonFraction></span> (2021 - $<span id="xdx_909_eus-gaap--Depreciation_pp0p0_c20210101__20211231_zEpq0hmR1Urj" title="Depreciation"><ix:nonFraction name="us-gaap:Depreciation" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">773,497</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; 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; 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_905_eus-gaap--AreaOfLand_iI_usqft_c20210331_zb4AI0UvGLhb" title="Area of land"><ix:nonFraction name="us-gaap:AreaOfLand" contextRef="AsOf2021-03-31" 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_90B_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zCrBp0v2Yb6a" title="Proceed for disposal"><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_zqDRPPr9JDs1"><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_zuCI6FDeZusf" 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_ziVkpa5BoC2" 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_90E_eus-gaap--GainLossOnDispositionOfAssets1_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zODB5SWYTDU9" title="Recognized gains"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" 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_905_eus-gaap--GainLossOnDispositionOfAssets1_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zLjGWanJFmUh"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" 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.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:IntangibleAssetsDisclosureTextBlock"><p id="xdx_800_eus-gaap--IntangibleAssetsDisclosureTextBlock_znkjLaBcpor6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>7.
<span>Patents <span id="xdx_825_zrTZKxGdRuze" style="display: none; font-family: Times New Roman, Times, Serif">PATENTS</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span> </b></span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"><p id="xdx_895_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zzvrLwZgwhT3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span id="xdx_8B8_zxK14KCMvErj" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">SCHEDULE OF PATENTS</span><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; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2022</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2022</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_988_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20221231_z0q6dzd0VTZg" title="Patents, cost" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedPatentsGross" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">195,725</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_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_z0tX8HePGAp7" title="Accumulated amortization" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">195,725</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_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20221231_zfYJXMACyTz2" title="Patents, Net" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right">&#160;&#160;&#160;&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0917">-</span></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; 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; 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; 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; 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; 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_98B_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zkn2b2EVDoh8" 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_98B_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_zgaMj03jDWS1" 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_980_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zY1rnrZss2Hl" 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>

</ix:nonNumeric><p id="xdx_8AA_zcAkhQu5URAl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Decrease
in 2022 cost was due to currency conversion. The cost as of December 31, 2022 in Canadian dollars is $<span id="xdx_90C_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20221231_zkRGXOYOzlq" title="Increase in currency conversion"><ix:nonFraction name="FSI:IncreaseInCurrencyConversion" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="CAD">265,102</ix:nonFraction></span> (2021 - $<span id="xdx_90E_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20211231_zbdVg7Xh6Nnc" title="Increase in currency conversion"><ix:nonFraction name="FSI:IncreaseInCurrencyConversion" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="CAD">265,102</ix:nonFraction></span> CAD).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of amortization for 2022 was $<span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--PatentsMember_zfdnf2UEsaJb" title="Amortization of intangible assets"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2022-01-012022-12-31_us-gaap_PatentsMember84249640" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">13,699</ix:nonFraction></span> (2021 - $<span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--PatentsMember_z097jfbVwX49" title="Amortization of intangible assets"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2021-01-012021-12-31_us-gaap_PatentsMember" 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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock"><p id="xdx_801_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zNTYnlrUvc69" style="font: 10pt Times New Roman, Times, Serif; margin: 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</span></span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="font-variant: small-caps"><span><span id="xdx_829_zrWlCQuthC1f" style="font: small-caps 10pt Times New Roman, Times, Serif; display: none"><b>GOODWILL
AND INTANGIBLE ASSETS</b></span></span> </span></b></span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock"><p id="xdx_891_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zbrYiNcCBuO8" style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_z5ulJQC246u1">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: 80%; padding-bottom: 1.5pt">Balance as of December 31, 2021 and 2022</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: 16%; text-align: right"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zKZkeDfDjVq3" title="Goodwill"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20221231_zXv5UuxHigM6"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,534,275</ix:nonFraction></ix:nonFraction></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, 2021 and 2022</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_905_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_z5VzZGQZvtF9" title="Indefinite lived intangible assets, ending balance"><span id="xdx_901_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20221231_zMQhyANSjs33"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">770,000</ix:nonFraction></ix:nonFraction></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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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: 80%">Balance as of December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zaeM2pOh62j" title="Indefinite lived intangible assets, beginning balance" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="AsOf2020-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,006,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_984_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zq40bQbXRVmd" 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>Balance as of December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zvqVdHmFjL03" title="Indefinite lived intangible assets, beginning balance" style="text-align: right"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="AsOf2021-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,830,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_980_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zZv6U1ytREy2" title="Amortization" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2022-01-012022-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">160,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, 2022</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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zVBEeoIhBZjh" title="Indefinite lived intangible assets, ending balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="AsOf2022-12-31_custom_EnPInvestmentsCorporationLLCMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,670,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Definite
lived intangible assets consist of customer relationships and software related to the acquisition of ENP Investments.</span></p>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"><p id="xdx_891_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zmXqIIEewY3d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zYUNT0na5iQh" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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: 80%; text-align: justify">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zIDiF5aFT98b" title="2023"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="AsOf2022-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">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zTKg1CyNbkP4" title="2024" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="AsOf2022-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">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z5A0FkAzpZAi" title="2025" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="AsOf2022-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">2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zoS6GWjrU7Sh" title="2026" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="AsOf2022-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">2027</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--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z7ovJ3uJ5AOd" title="2027" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="AsOf2022-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_8A3_zoA2gOTiAmug" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="FSI:LongTermDepositsTextBlock"><p id="xdx_808_ecustom--LongTermDepositsTextBlock_z4yVgoLnhJxk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>9.
<span style="font-variant: small-caps"><span><span><span>Long Term Deposits</span></span> </span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"><span id="xdx_821_z4XUKhvnSzQg">LONG TERM DEPOSITS</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="FSI:ScheduleOfLongTermDepositsTableTextBlock"><p id="xdx_895_ecustom--ScheduleOfLongTermDepositsTableTextBlock_zBsSm6lhatKa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zKgl9BZFWcI3" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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_49D_20221231_z9XYevAT68x5" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20211231_z7MuIDEwsiDa" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1.5pt">Long term deposits</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: 16%; text-align: right"><ix:nonFraction name="us-gaap:DepositsAssetsNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,540</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 style="border-bottom: Black 1.5pt solid; width: 16%; 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="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>
</ix:nonNumeric><p id="xdx_8A4_zeOZDYHgghtk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:EquityMethodInvestmentsDisclosureTextBlock"><p id="xdx_80D_eus-gaap--EquityMethodInvestmentsDisclosureTextBlock_zxtPhDd3osD2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>10.
<span>Investments</span> </b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_826_z7PlF420Ywia">INVESTMENTS</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 previously held a <span id="xdx_907_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpPeruInvestmentsLlcMember_z7M4k4sVIMAi" title="Ownership interest"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% ownership interest in ENP Peru, split between NanoChem (<span id="xdx_90F_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--NanoChemMember_z4mejyCp0X2a" title="Ownership percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2022-12-31_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">41.67</ix:nonFraction></span>%) and ENP Investments (<span id="xdx_90D_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpInvestmentsLLCMember_zCpO7Qy09Xp3" title="Equity method investment ownership percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2022-12-31_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">8.33</ix:nonFraction></span>%), which was
acquired in fiscal 2016. ENP Peru is located in Illinois and leases warehouse space. In June 2022, NanoChem acquired an additional
<span id="xdx_90A_ecustom--AdditionalEquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--NanoChemMember_zkGbvGvvWk1f" title="Additional ownership interest"><ix:nonFraction name="FSI:AdditionalEquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2022-12-31_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% ownership interest at a cost of $<span id="xdx_901_ecustom--RemainningShareOutstanding_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_zup04BX3caT" title="Remainning share outstanding"><ix:nonFraction name="FSI:RemainningShareOutstanding" contextRef="From2022-01-012022-12-31_custom_EnpPeruMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">506,659</ix:nonFraction></span> paid through a new $<span id="xdx_90A_eus-gaap--Cash_iI_c20221231__srt--OwnershipAxis__custom--EnpPeruMember_zBu0tlkLxaU8" title="cash"><ix:nonFraction name="us-gaap:Cash" contextRef="AsOf2022-12-31_custom_EnpPeruMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">259,000</ix:nonFraction></span> mortgage and cash on hand. The <span id="xdx_907_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zlAIHUcgjnid" title="Minority Interest Ownership Percentage"><ix:nonFraction name="us-gaap:MinorityInterestOwnershipPercentageByParent" contextRef="AsOf2022-12-31_custom_EnpnvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>% non-controlling interest
of the <span id="xdx_90C_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpInvestmentsLLCMember_z4NhTiOK5chi" title="Equity method investment ownership percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2022-12-31_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">8.33</ix:nonFraction></span>% owned by ENP Investments is included in non-controlling interest in these consolidated financial statements. The
Company&#8217;s investment in ENP Peru was previously accounted for using the equity method, however, is now consolidated into the
consolidated financial statements from the date control was obtained.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">It
was determined that ENP Peru did not meet the definition of a business in accordance with FASB Codification Topic 805, <i>Business
Combinations </i>(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 Peru as of the acquisition date. </span>The gain on acquisition of ENP Peru represents a gain on remeasurement of
the Company&#8217;s equity method investment immediately prior to the acquisition date.</p>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<ix:nonNumeric contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember" escape="true" name="us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"><p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zX6cbLFtnKDe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8BA_z3rK1lX9knB6">SCHEDULE
OF  FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED</span></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="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20220101__20221231_zSQUvD4v4mLl" style="text-align: right">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationConsiderationTransferred1_z5Yz0mGjSh1l" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left; padding-bottom: 1.5pt">Purchase consideration</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: 16%; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">506,659</ix:nonFraction></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 id="xdx_40A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iE_zRKjVmaEjkla" 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 style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,330</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iE_zqW2bjeKwDr9" 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 style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,750,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iE_zKdVDrGcsYZc" 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 style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150,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 id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNE_di_zDCvuxzhBmRc" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Deferred tax liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">174,582</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_iE_zS4Dc7t7YCYg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Long term debt</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="FSI:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">2,849,500</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iE_zALzdPO8ys64" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">883,248</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_iE_zINPPWTb6B08" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Excess of assets acquired over consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">376,589</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_ecustom--InvestmentEliminatedUponConsolidation_zoTIrQXaD8jk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Less investment eliminated upon consolidation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="FSI:InvestmentEliminatedUponConsolidation" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">41,538</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_ecustom--GainOnAcquisitionOfSubsidiary_zlDiwZHC5B3b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain on acquisition of ENP Peru</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="FSI:GainOnAcquisitionOfSubsidiary" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">335,051</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember" escape="true" name="us-gaap:EquityMethodInvestmentsTextBlock"><p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zIqugyKIQgnc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.7in"><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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8B5_zewEUz3CJgue">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></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: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_902_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zB3CB8AKKjCi" title="Balance, Beginning"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,822</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_983_ecustom--EquityMethodInvestmentReturnOfEquity_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zNmJPMjn6ABe" 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" sign="-" unitRef="USD">3,822</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_982_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zA4Td4LWwNal" title="Gain 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" 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: White">
    <td>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z6zwz0rtTc4k" title="Balance, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">22,642</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_98F_ecustom--EquityMethodInvestmentReturnOfEquity_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zsYQzKt3k7B6" title="Return of equity" style="text-align: right">(<ix:nonFraction name="FSI:EquityMethodInvestmentReturnOfEquity" contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">8,750</ix:nonFraction></td><td style="text-align: left">)</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_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z5tunoBA2Wwe" title="Gain in equity method investment" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">27,646</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">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_988_ecustom--InvestmentEliminatedUponConsolidation_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zQYO2nCQYykl" title="Investment eliminated upon consolidation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="FSI:InvestmentEliminatedUponConsolidation" contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">41,538</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, June 30 and December 31, 2022</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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zbgFRVVu3nVb" title="Balance, Ending" style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1028">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

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

<ix:nonNumeric contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember" escape="true" name="us-gaap:GainLossOnInvestmentsTextBlock"><p id="xdx_89B_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zlizCmMgIrk5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information related to the equity accounted investment is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8BD_z3IeGPjwTig8">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></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: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20220101__20220630__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zTALQTJC7sz7" style="border-bottom: Black 1.5pt solid; text-align: center">Six months ended <br /> June 30, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z9MfWvtc0Zf6" style="border-bottom: Black 1.5pt solid; text-align: center">Year ended <br /> December 31, 2021</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 id="xdx_400_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zdIpjC1Jux9c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Net sales</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:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2022-01-012022-06-30_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">162,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: 16%; text-align: right"><ix:nonFraction name="us-gaap:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">322,079</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></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_404_ecustom--RealizedInvestmentGainsLossesNet_zp4rJOPGPP5j" 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">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2022-01-012022-06-30_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">55,292</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="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,285</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_zC0s89wcMkN2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
December 2018 the Company invested $<span id="xdx_90B_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zYjtGLvajH9c" title="Investment"><ix:nonFraction name="us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" contextRef="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember" format="ixt:numdotdecimal" decimals="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 2021 but may be extended with notice for a maximum of two years. During the
year ended December 31, 2021, the Company entered an agreement with Applied to extend the maturity date of this promissory note to
<span id="xdx_90C_eus-gaap--DebtInstrumentMaturityDate_dd_c20210101__20211231_z34NZ0p8L3K1" title="Debt maturity date"><ix:nonNumeric contextRef="From2021-01-012021-12-31" format="ixt:datemonthdayyearen" name="us-gaap:DebtInstrumentMaturityDate">December 6, 2023</ix:nonNumeric></span>. In accordance with FASB Codification Topic 323, <i>Investments &#8211; Equity Method and Joint Ventures</i> (ASC
323), the Company has elected to account for this investment at cost.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif">(</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>c<span style="font-variant: small-caps">)
</span></b>In December 2018 the Company invested $<span id="xdx_908_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_z9nMV8tKtI9d" title="Investment"><ix:nonFraction name="us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" contextRef="From2018-12-012018-12-31_custom_TrioOpportunityCorpMember" format="ixt:numdotdecimal" decimals="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_902_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20181201__20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_zzbF5HEX7sZ9" title="Common stock issued, 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_90E_eus-gaap--SharePrice_iI_pid_c20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_zjW4RMgca8ic" title="Share price"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2018-12-31_us-gaap_CommonClassBMember_custom_TrioOpportunityCorpMember" 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>d) </b>In
January 2019, the Company invested 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_908_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20190131__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--FloridaBasedLLCMember_zkjYl7mzizT9" title="Ownership percentage"><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>

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

<ix:nonNumeric contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390" escape="true" name="us-gaap:EquityMethodInvestmentsTextBlock"><p id="xdx_895_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zCmzUSq8q0E6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zJi7XAK6QsRg" 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: 85%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zLrCbVhMh1j5" title="Balance, Beginning"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,572,345</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">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z06NYLPrQHmg" title="Gain (loss) in equity method investment" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703" format="ixt:numdotdecimal" decimals="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_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zMN3D1pDHRY" 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_FloridaBasedLLCMember84251703" format="ixt:numdotdecimal" decimals="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>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8ojLyzsVACi" title="Balance, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember84251718" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,701,368</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_980_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zP9MvKl3IF6e" title="Gain (loss) in equity method investment" style="text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">307,527</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_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqq628UNx0wc" title="Return of equity" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="FSI:EquityMethodInvestmentReturnOfEquity" contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">250,000</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, 2022</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_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrSxR8hLzQFd" title="Balance, Ending" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2022-12-31_custom_FloridaBasedLLCMember84251734" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,758,895</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AF_zf4ZkasQvIQh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390" escape="true" name="us-gaap:GainLossOnInvestmentsTextBlock"><p id="xdx_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zJEodwGYEjDg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information related to the equity accounted investment is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zKKN1pJiKd59" 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" id="xdx_497_20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zYKqfT1o8Oki" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zpzbmcsHYlo7" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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 id="xdx_402_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zkrWkJ3kpxte" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Net sales</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:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390" format="ixt:numdotdecimal" decimals="0" unitRef="USD">18,103,070</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:GainsLossesOnSalesOfInvestmentRealEstate" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703" format="ixt:numdotdecimal" decimals="0" unitRef="USD">11,543,277</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--RealizedInvestmentGainsLosses_zmisjQAmqTLi" 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 style="text-align: right"><ix:nonFraction name="us-gaap:RealizedInvestmentGainsLosses" contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,204,311</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:RealizedInvestmentGainsLosses" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,517,387</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--RealizedInvestmentGainsLossesNet_z3TOwU1Z5445" 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 style="text-align: right"><ix:nonFraction name="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390" format="ixt:numdotdecimal" decimals="0" unitRef="USD">615,055</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="FSI:RealizedInvestmentGainsLossesNet" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703" format="ixt:numdotdecimal" decimals="0" unitRef="USD">908,045</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022, the Company had sales of $<span id="xdx_909_eus-gaap--RevenueFromRelatedParties_c20220101__20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zKEZpZxQVQxc" title="Sales"><ix:nonFraction name="us-gaap:RevenueFromRelatedParties" contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,938,735</ix:nonFraction></span> (2021 - $<span id="xdx_908_eus-gaap--RevenueFromRelatedParties_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zK2lWAYo6v0f" title="Sales"><ix:nonFraction name="us-gaap:RevenueFromRelatedParties" contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,982,281</ix:nonFraction></span>) to the Florida Based LLC, of which $<span id="xdx_90E_eus-gaap--AccountsReceivableRelatedParties_iI_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zipjPwL38yR3" title="Accounts receivable related parties"><ix:nonFraction name="us-gaap:AccountsReceivableRelatedParties" contextRef="AsOf2022-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,423,285</ix:nonFraction></span>
is included within Accounts Receivable as at December 31, 2022 (2021 - $<span id="xdx_900_eus-gaap--AccountsReceivableRelatedParties_iI_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zIK3DP0r3Y1k" title="Accounts receivable related parties"><ix:nonFraction name="us-gaap:AccountsReceivableRelatedParties" contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,202,345</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_90B_eus-gaap--PaymentsToAcquireInvestments_pp0p0_c20201201__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zIHyXm5c6Wdk"><ix:nonFraction name="us-gaap:PaymentsToAcquireInvestments" contextRef="From2020-12-012020-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></span> </span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">in
Lygos Inc. (&#8220;Lygos&#8221;), a privately held entity, under a Simple Agreement for Future Equity (&#8220;SAFE&#8221;)
agreement. Lygos is a company developing a sustainable aspartic acid microbe strain. In 2021, the Company made a second SAFE
investment of $<span id="xdx_906_eus-gaap--PaymentsToAcquireInvestments_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_ziYwfqJlU4ba"><ix:nonFraction name="us-gaap:PaymentsToAcquireInvestments" contextRef="From2021-01-012021-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">500,000</ix:nonFraction></span>.</span> <span style="font: small-caps 10pt Times New Roman, Times, Serif">T</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">he
Company has elected to account for this investment at cost. A summary of the Company&#8217;s investment follows:</span></p>

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

<ix:nonNumeric contextRef="From2022-01-012022-12-31_custom_LygosIncMember" escape="true" name="us-gaap:EquityMethodInvestmentsTextBlock"><p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zZZl4WPs7Yhd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_zl6Amg4fNlp8" 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: 85%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zPqcyCUb8Fne" title="Balance, Beginning"><ix:nonFraction name="us-gaap:EquityMethodInvestments" contextRef="AsOf2020-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">500,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: left; padding-bottom: 1.5pt">Additional investment</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"><span id="xdx_908_ecustom--AdditionalPaymentInvestment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zgienAi9gmx9" title="Additional payment investment"><ix:nonFraction name="FSI:AdditionalPaymentInvestment" contextRef="From2021-01-012021-12-31_custom_LygosIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">500,000</ix:nonFraction></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="padding-bottom: 1.5pt">Balance, December 31, 2021 and December 31, 2022</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_90D_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_z4FCW8waCDg1" title="Balance, Ending"><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></span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A3_zMUeIDUguaL1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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 -->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"><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; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b></b></span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ShortTermDebtTextBlock"><p id="xdx_80B_eus-gaap--ShortTermDebtTextBlock_zB4eL9qIZTkh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>11.
<span>Short-Term Line of Credit</span> </b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify"><span id="xdx_821_zTHFx2KDdst">SHORT-TERM LINE OF CREDIT</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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
March 2022, ENP Investments signed a new agreement with Midland States Bank (&#8220;Midland&#8221;) to renew the credit line. In
June 2022, ENP Investments closed the account. The revolving line of credit was for an aggregate amount up to $<span id="xdx_90B_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUZp1IGJvSz" title="Aggregate amount of revolving line of credit"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2022-03-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,000,000</ix:nonFraction></span>.
The interest rate of this loan was 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 was
calculated using a rate of <span id="xdx_90E_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20220301__20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zcJM0194sF82" title="Debt effective rate"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateDuringPeriod" contextRef="From2022-03-012022-03-31_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 was the interest rate of this loan less than <span id="xdx_90A_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20220331__srt--RangeAxis__srt--MaximumMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z5hd7uAi50Pe" title="Line of credit facility interest rate"><ix:nonFraction name="us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd" contextRef="AsOf2022-03-31_srt_MaximumMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.25</ix:nonFraction></span>%
per annum or more than the maximum rate allowed by applicable law. The interest rate at December 31, 2021 was <span id="xdx_903_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z9ebtyLGobyi" 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>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contained 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 was a guarantor of <span id="xdx_901_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220331__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zRUKdUGr7Or7" title="Loan guaranteed rate"><ix:nonFraction name="FSI:LoanGuaranteedRate" contextRef="AsOf2022-03-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_900_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220331__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zqDrs3Yt4U2d" title="Line of Credit"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2022-03-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,600,000</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 which has now been terminated.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $<span id="xdx_905_eus-gaap--ShortTermBorrowings_iI_dxL_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKdK00bQKCta" title="Short-term borrowings::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1109">nil</span></span> (2021 - $<span id="xdx_906_eus-gaap--ShortTermBorrowings_iI_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUuOOy0f7qL5" title="Short-term borrowings"><ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">811,665</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(b) </b>In
October 2021, the Company signed a new agreement with Midland to replace the expiring credit line at Harris. In June 2022, the
Company closed the account. The revolving line of credit was for an aggregate amount of up to the lesser of (i) $<span id="xdx_90E_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_ztZDNnTv9UEg" 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" unitRef="USD">3,500,000</ix:nonFraction></span>, or (ii)
<span id="xdx_904_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zMHKyvgnvQok" 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_90F_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zaHHAWh9PMOg" 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 was calculated using a rate of <span id="xdx_90C_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20211001__20211031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zSFLo58ETDc1" 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 was the
interest rate of this loan less than <span id="xdx_90D_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20211031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zvNVmnHj6nk7" 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 was <span id="xdx_906_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zVXDrsCmwTM6" 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>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contained 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 required that the Company maintain a minimum ratio of qualifying financial
assets to the sum of qualifying financial obligations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 had granted Midland a security interest
in substantially all of the assets of NanoChem, exclusive of intellectual property assets which has been revoked.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $<span id="xdx_90B_eus-gaap--LinesOfCreditCurrent_iI_dxL_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zTYT0EvEf9X9" title="Line of Credit::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1125">nil</span></span> (December 31, 2021 - $<span id="xdx_90C_eus-gaap--LinesOfCreditCurrent_iI_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zn8eXhahwsIk" 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" unitRef="USD">1,489,154</ix:nonFraction></span>).</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(c) </b>In
June 2022, ENP Investments signed a new agreement with Stock Yards Bank and Trust (&#8220;Stock Yards&#8221;) to replace the credit
line at Midland. The revolving line of credit is for an aggregate amount of up to the lesser of (i) $<span id="xdx_909_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zISBJdjuPeWk" title="Aggregate amount of revolving line of credit"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,000,000</ix:nonFraction></span>, or (ii) 50-80% of
eligible domestic accounts receivable plus <span id="xdx_902_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zx3TZwsWZbb2" title="Percentage of foreign accounts receivable of inventory"><ix:nonFraction name="FSI:PercentageOfForeignAccountsReceivableOfInventory" contextRef="From2022-06-012022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% of inventory, capped at $<span id="xdx_909_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zjilbkhNHOp8" title="Debt face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,000,000</ix:nonFraction></span>. Interest on the unpaid principal balance of this
loan will be calculated using the greater of prime or 4.0%. The interest rate at December 31, 2022 is <span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zDKbMLgiy4e5" title="Interest rate"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2022-12-31_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">7.5</ix:nonFraction></span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards, Stock Yard&#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_90C_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220630__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_ze9COZLioPi4" title="Loan guaranteed rate"><ix:nonFraction name="FSI:LoanGuaranteedRate" contextRef="AsOf2022-06-30_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember" 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_90D_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220630__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zKfWlKSP9DG5" title="Line of credit"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2022-06-30_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,600,000</ix:nonFraction></span>.
The non-controlling interest is the guarantor of the remaining <span id="xdx_901_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220630__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zGohIFnEXYI6" title="Loan guaranteed rate"><ix:nonFraction name="FSI:LoanGuaranteedRate" contextRef="AsOf2022-06-30_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>% of all the principal and other loan costs not to exceed
$<span id="xdx_906_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220630__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zTkNEJnKu20d" title="Line of credit"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" contextRef="AsOf2022-06-30_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,400,000</ix:nonFraction></span>. As of December 31, 2022, ENP Investments was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards a security interest
in substantially all of the assets of ENP Investments, exclusive of intellectual property assets.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $<span id="xdx_90A_eus-gaap--ShortTermBorrowings_iI_pp0p0_c20221231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_z7HS3Hs4NKw3" title="Short term borrowings"><ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,477,794</ix:nonFraction></span> (2021- $<span id="xdx_90C_eus-gaap--ShortTermBorrowings_iI_dxL_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zHrZK1te8wOd" title="Short term borrowings::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1147">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(d) </b>In
June 2022, the Company signed a new agreement with Stock Yards to replace the credit line at Midland. 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_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z53vf9T15Gw" title="Aggregate amount of revolving line of credit"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">4,000,000</ix:nonFraction></span>, or (ii) <span id="xdx_90A_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUX2L4iuddDk" title="Eligible percentage of domestic accounts receivable"><ix:nonFraction name="FSI:EligiblePercentageOfDomesticAccountsReceivable" contextRef="From2022-06-012022-06-30_custom_StockBankMember_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_901_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zlwpkLnfK7Gh" title="Percentage of foreign accounts receivable of inventory"><ix:nonFraction name="FSI:PercentageOfForeignAccountsReceivableOfInventory" contextRef="From2022-06-012022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">50</ix:nonFraction></span>% of inventory, capped at $<span id="xdx_908_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z4jwX5okdTuc" title="Debt face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,000,000</ix:nonFraction></span>. Interest on the unpaid principal balance of this loan will
be calculated using the greater of prime or 4.0%. The interest rate at December 31, 2022 is <span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20220930__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zB46NH6wknhl" title="Interest rate"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2022-09-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">7.5</ix:nonFraction></span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards, Stock Yards 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, 2022, the Company was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards 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; 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; 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, 2022 were $<span id="xdx_907_eus-gaap--ShortTermBorrowings_iI_c20221231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zdXrzBgWUbVb" title="Short term borrowings"><ix:nonFraction name="us-gaap:ShortTermBorrowings" contextRef="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">340,797</ix:nonFraction></span> (2021 - $<span id="xdx_906_eus-gaap--ShortTermBorrowings_iI_dxL_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_ziw47pP41Epl" title="Short term borrowings::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1161">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:LongTermDebtTextBlock"><p id="xdx_804_eus-gaap--LongTermDebtTextBlock_zRFbY4mn6d63" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>12.
<span>Long Term Debt</span> </b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"><span id="xdx_828_zDf2pZXt09ui">LONG TERM DEBT</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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
January 2018, ENP Investments signed a $<span id="xdx_90A_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_ztPQj5Qm9Gf9" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember" 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_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zw79SbEFodEj" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">5.250</ix:nonFraction></span>% to be repaid over <span id="xdx_90B_eus-gaap--DebtInstrumentTerm_dtY_c20180101__20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zQ3Zickc0G9" title="Debt instrument term"><ix:nonNumeric contextRef="From2018-01-012018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember" 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 interest for the year ended
December 31, 2021 was $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z7MD0D9Ug1l" title="Interest expense debt"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,788</ix:nonFraction></span>. In May 2021, ENP Investments paid the loan in full with cash on hand.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 2020, NanoChem received a <span id="xdx_903_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z4jYjw2NQQl4" 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_901_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z8LngB6jG4yi" title="Debt instrument face amount"><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_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_za3XjW5510w4" 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 SBA and has been recorded as Other Income in the consolidated statements of operations and
comprehensive income for the year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(c) </b>In
April 2020, ENP Investments received a <span id="xdx_909_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zCKfvO57F4r" title="Debt instrument term"><ix:nonNumeric contextRef="From2020-04-012020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpInvestmentsLLCMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">two year</ix:nonNumeric></span> loan of $<span id="xdx_90B_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zxcQgn2bcTfd" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpInvestmentsLLCMember" 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_90D_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zt5B7I6sgvje" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpInvestmentsLLCMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1</ix:nonFraction></span>%. In March
2021, the loan was forgiven by the SBA and has been recorded as Other Income in the consolidated statements of operations and
comprehensive income for the year ended December 31, 2021.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(d) </b>In
October 2020, NanoChem signed a $<span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zZtZoEgVL6r6" title="Debt instrument face amount"><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_901_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_zHtHKAT4Qu3j" 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_zFqLhyZud7A2" 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_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zHFwVqWL0aKc" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% interest in ENP
Investments. In June 2022, the loan was paid in full with funds from Stock Yards. Interest expense for the year December 31, 2022
was $<span id="xdx_900_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zKvkvCU1N01a" title="Debt Long term debt amount"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2022-01-012022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">30,334</ix:nonFraction></span> (2021 - $<span id="xdx_908_eus-gaap--InterestExpenseDebt_c20210101__20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zyPVInj5i7W3" title="Debt Long term debt amount"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">69,831</ix:nonFraction></span>). The balance owing at December 31, 2022 was $<span id="xdx_90B_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zIGq1lMwgcse" title="Debt default long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1197">nil</span></span> (2021 - $<span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z52Cp5G4mOHh" title="Debt Long term debt amount"><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>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(e) </b>In
October 2020, NanoChem signed a loan for $<span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zAlqWStcJtV5" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-10-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">894,253</ix:nonFraction></span> with Midland with an interest rate <span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zc5SPKTLEM64" 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 <span id="xdx_907_eus-gaap--DebtInstrumentTerm_dc_c20201001__20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zr1x3q3VMoA2"><ix:nonNumeric contextRef="From2020-10-012020-10-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">two years</ix:nonNumeric></span> with equal
monthly payments including interest. The funds were used to replace the loan at Harris for the purchase of new manufacturing
equipment. In June 2022, the loan was paid in full with funds from Stock Yards. Interest expense for the year ended December 31,
2022 was $<span id="xdx_907_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zTOYhIjICgF6" title="Interest expense debt"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2022-01-012022-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">5,816</ix:nonFraction></span> (2021 - $<span id="xdx_90D_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zwLDWfyf242a" title="Interest expense debt"><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>). The balance owing at December 31, 2022 was $<span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zEhaCT7AS0ri" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1210">nil</span></span> (2021 - $<span id="xdx_90A_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFDbXietLLq4" title="Debt Long term debt amount"><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>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(f) </b>In
January 2020, ENP Mendota refinanced its mortgage and signed a loan for $<span id="xdx_901_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zknHy8voM714" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">450,000</ix:nonFraction></span> with Stock Yards to be repaid over <span id="xdx_90D_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_z7dzb51NeFv2" 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_905_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zVVrZnvxaML6" title="Debt instrument interest rate"><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_907_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zOzX1VeKAlT1" title="Debt instrument term"><ix:nonNumeric contextRef="From2020-01-012020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember" 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__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zqpWDfpkMor9"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">2.5</ix:nonFraction></span>%. Interest expense for the year ended December 31, 2022 was
$<span id="xdx_909_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_z0ZWQoMBzA3c" title="Interest expense debt"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2022-01-012022-12-31_custom_ENPMendotaMember_custom_TermLoanMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">18,590</ix:nonFraction></span> (2021 - $<span id="xdx_908_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zSmZasUuPETi" title="Interest expense debt"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2021-01-012021-12-31_custom_ENPMendotaMember_custom_TermLoanMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">17,107</ix:nonFraction></span>). The balance owing at December 31, 2022 is $<span id="xdx_90B_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zju78pMnKWye" title="Debt default longterm debt amount"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">415,430</ix:nonFraction></span> (2021 - $<span id="xdx_901_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zlXEZ1b3SV54" title="Debt default longterm debt amount"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">430,880</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(g) </b>In
June 2022, NanoChem signed a loan for $<span id="xdx_902_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zth5VqZAvlpj" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,935,000</ix:nonFraction></span> with Stock Yards with an interest rate of <span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemMember_zQfwss3h4ye" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.90</ix:nonFraction></span>% to be repaid
over <span id="xdx_908_eus-gaap--DebtInstrumentTerm_dc_c20220601__20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zZnTzhPLuLqk"><ix:nonNumeric contextRef="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">three years</ix:nonNumeric></span> with equal monthly payments including interest. The funds were used to replace the loans at Midland for the
purchase of the <span id="xdx_905_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zjv0peSvXS96" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">65</ix:nonFraction></span>% interest in ENP Investments and the new manufacturing equipment. Interest expense for the year ended December
31, 2022 was $<span id="xdx_908_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_z8KEOSlLKyrf" title="Interest expense debt"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2022-01-012022-12-31_custom_NanoChemMember_custom_TermLoanMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">45,113</ix:nonFraction></span> (2021 - $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zfrRp9fZcqC4" title="Interest expense debt::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1240">nil</span></span>). The balance owing at December 31, 2022 is $<span id="xdx_902_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zBKz7eHjvIZk" title="Debt Long term debt amount"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,632,672</ix:nonFraction></span> (2021 - $<span id="xdx_903_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zWWPODcvoDR1" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1244">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(h) </b>In
January 2020 ENP Peru signed a $<span id="xdx_90C_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zKUqKDxzXqY1" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,000,000</ix:nonFraction></span> loan with an interest rate <span id="xdx_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zt10JBiYicze" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruOneMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.35</ix:nonFraction></span>% to be repaid over <span id="xdx_902_eus-gaap--DebtInstrumentTerm_c20200101__20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zPvYgVNGMfgb"><ix:nonNumeric contextRef="From2020-01-012020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">ten years</ix:nonNumeric></span> with equal monthly payments
including interest. Upon the purchase of the remainder of ENP Peru in June 2022, the Company assumed the first mortgage at Stock
Yards with a balance of $<span id="xdx_906_eus-gaap--LoansPayable_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zOL8pqPAb9J7" title="First mortgage"><ix:nonFraction name="us-gaap:LoansPayable" contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,849,500</ix:nonFraction></span>. Interest expense for the year ended December 31, 2022 was $<span id="xdx_90F_eus-gaap--InterestExpense_pp0p0_c20220101__20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zoYHB9J8VfE" title="Interest expense"><ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2022-01-012022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">62,679</ix:nonFraction></span> (2021 - $<span id="xdx_909_eus-gaap--InterestExpense_pp0p0_dxL_c20210101__20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zrqFxY2gVLp9" title="Interest expense::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1255">nil</span></span>). The balance
owing at December 31, 2022 was $<span id="xdx_904_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_z5AElCPQOdRj" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,813,015</ix:nonFraction></span> (2021 - $<span id="xdx_90E_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zj8ttVLYgaD5" title="Debt instrument face amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1259">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(i) </b>In
June 2022, ENP Peru Investments obtained a second mortgage for $<span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_z2Ae4ch8KJ08" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">259,000</ix:nonFraction></span> with Stock Yards to be repaid over <span id="xdx_901_eus-gaap--DebtInstrumentTerm_c20220601__20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zxDAJGqGRlS1" title="Debt instrument term"><ix:nonNumeric contextRef="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember" format="ixt-sec:durwordsen" name="us-gaap:DebtInstrumentTerm">10 years</ix:nonNumeric></span> with monthly
installments plus interest with an interest rate of <span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zNEfDhbz4x6b" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruInvestmentsMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">5.4</ix:nonFraction></span>%. Interest expense for the year ended December 31, 2022 was $<span id="xdx_906_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zXdm5BB1C5nl" title="Interest expense debt"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2022-01-012022-12-31_custom_ENPPeruInvestmentsMember_custom_TermLoanMember_custom_MidlandBankMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,077</ix:nonFraction></span> (2021 -
$<span id="xdx_903_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zgep0qEszd99" title="Interest expense debt::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1269">nil</span></span>). The balance owing at December 31, 2022 was $<span id="xdx_908_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zhdIy7nJzu92" title="Debt Long term debt amount"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">256,162</ix:nonFraction></span> (2021 - $<span id="xdx_903_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zAxouUXyIseg" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1273">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(j) </b>In
December 2022, NanoChem signed a three year loan for up to $<span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zO76KkzWIqo4" title="Debt instrument face amount"><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,000,000</ix:nonFraction></span> with Stock Yards with an interest rate of <span id="xdx_90E_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemMember_zQGIRB3vPRy9" title="Debt instrument interest rate stated percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="AsOf2022-12-31_custom_TermLoanMember_us-gaap_PrimeRateMember_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">6.5</ix:nonFraction></span>%. Interest only
payments are required for the first 18 months with interest and principal being paid in the last 18 months. The funds are being used
to purchase new manufacturing equipment. Interest expense for the year ended December 31, 2022 was $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember_z6uO7lYjSO5f" title="Interest expense debt"><ix:nonFraction name="us-gaap:InterestExpenseDebt" contextRef="From2022-01-012022-12-31_custom_NanoChemMember_custom_TermLoanMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">23,632</ix:nonFraction></span> (2021 - $<span id="xdx_900_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember_zYF5zWZYOL87" title="Interest expense debt::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1281">nil</span></span>). The
balance owing at December 31, 2022 is $<span id="xdx_909_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zA4eTkPDqDwi" title="Debt Long term debt amount"><ix:nonFraction name="us-gaap:DebtDefaultLongtermDebtAmount" contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_NanoChemMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,036,798</ix:nonFraction></span> (2021 - $<span id="xdx_901_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zmAdhmJ46N3g" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1285">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, Company was in compliance with all loan covenants.</span></p>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="FSI:ScheduleOfLoanCovenantsTableTextBlock"><p id="xdx_894_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zHvC8QzbWMe2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_zGAiJVg2lanh" 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_49F_20220101__20221231_ze0EakRylO8f" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zolYBd71smf7" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iS_zdqP51N4peD5" 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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,366,598</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="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,847,638</ix:nonFraction></td><td style="width: 1%; 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_409_eus-gaap--LongTermDebt_iS_zd79v3S0ljHf" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Balance, beginning of period</span></td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,366,598</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:LongTermDebt" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,847,638</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_405_eus-gaap--ProceedsFromBankDebt_za4GshHnUdQ2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Plus: Proceeds from loans</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromBankDebt" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,230,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"><span style="-sec-ix-hidden: xdx2ixbrl1296">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--ProceedsFromLoanAcquiredFromAcquisition_zDplANtj8P94" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Plus: Loan acquired with acquisition of ENP Peru</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:ProceedsFromLoanAcquiredFromAcquisition" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,849,500</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"><span style="-sec-ix-hidden: xdx2ixbrl1299">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--RepaymentsOfBankDebt_iN_di_zDtkTrNJwSL4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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"><span style="-sec-ix-hidden: xdx2ixbrl1301">-</span></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:RepaymentsOfBankDebt" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">537,960</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_di_zkAX6MoqQBlk" style="vertical-align: bottom; background-color: White">
    <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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,292,819</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">943,080</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--LongTermDebt_iE_zrYp6fU5hSGb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, end of period</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="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,154,077</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="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,366,598</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock"><p id="xdx_892_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zPdLB1tFg7X1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zXe9nTd2vvvb" style="display: none">SCHEDULE
OF OUTSTANDING BALANCE LOAN</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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 at December 31,</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20221231_zpDDkwj5qB3h" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_490_20211231_zIbuCvsdwZgh" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z51OvFVDsBJ" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">a) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1312">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1313">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zOp9DOIG4vl5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">b) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1315">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1316">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zAF6NKBZo486" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">c) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1318">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1319">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zANa440uuUp5" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left">d) Long term debt &#8211; Midland States Bank</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1321">-</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: 16%; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2021-12-31_custom_MidlandStatesBankOneMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,554,044</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zcSpDytAmH0c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">e) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1324">-</span></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:LongTermDebt" contextRef="AsOf2021-12-31_custom_MidlandStatesBankTwoMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">381,674</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zRATjAqHNIOf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">f) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_StockYardsBankTrustMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">415,430</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:LongTermDebt" contextRef="AsOf2021-12-31_custom_StockYardsBankTrustMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">430,880</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustTwoMember_zbSIOlIqDCQ1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">g) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_StockYardsBankTrustTwoMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,632,672</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"><span style="-sec-ix-hidden: xdx2ixbrl1331">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustThreeMember_zTIJQNJq55Gh" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">h) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_StockYardsBankTrustThreeMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,813,015</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"><span style="-sec-ix-hidden: xdx2ixbrl1334">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFourMember_zWqqgO20BRFg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">i) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_StockYardsBankTrustFourMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">256,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"><span style="-sec-ix-hidden: xdx2ixbrl1337">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFiveMember_z7GugtLGDPxk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">j) 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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31_custom_StockYardsBankTrustFiveMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,036,798</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"><span style="-sec-ix-hidden: xdx2ixbrl1340">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--LongTermDebt_iI_zzlCYBCc0itk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Total</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,154,077</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:LongTermDebt" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,366,598</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LongTermDebtCurrent_iNI_di_zbdjpnjAF9pi" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">717,612</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:LongTermDebtCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">793,574</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebtNoncurrent_iI_zcrrS4XZ0s6k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Long term debt</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:LongTermDebtNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,436,465</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:LongTermDebtNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,573,024</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

</ix:nonNumeric><p id="xdx_8AA_zMkclYKLDyQc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:IncomeTaxDisclosureTextBlock"><p id="xdx_800_eus-gaap--IncomeTaxDisclosureTextBlock_zCQgZ7eLuYf9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>13.
<span>Income Taxes</span> </b></span></p>

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

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"><p id="xdx_895_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z3wOe1Zl9r8e" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zpWjriyJZ2g9" 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_49B_20220101__20221231_zOrbSzqvbztd" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20210101__20211231_zVlMaxgLp4d4" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zHWhd8rmwiVf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Current tax, federal</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:CurrentFederalTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,017,059</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:CurrentFederalTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,309,503</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_zLdopQG8Faak" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">460,098</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">592,394</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_z3eKKdARv68i" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">216,082</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="From2021-01-012021-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></tr>
  <tr id="xdx_405_ecustom--CurrentTax_pp0p0_mtCITEBzvlG_maCITEBzPIr_zXL3EDO1lREg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="FSI:CurrentTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,693,239</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:CurrentTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,993,182</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--IncomeTaxRecovery_pp0p0_maCITEBzPIr_zSDSptipEWG5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-align: left">Income tax 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="FSI:IncomeTaxRecovery" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">1,476,088</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"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--CurrentIncomeTaxExpenseBenefits_iT_mtCITEBzPIr_maITEBz5Oq_z7ujDL1kONY5" 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="FSI:CurrentIncomeTaxExpenseBenefits" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">217,151</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:CurrentIncomeTaxExpenseBenefits" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,993,182</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_zUPjLo5tZ1y2" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">49,088</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:DeferredFederalIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">250,153</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zAWsGCb8ugd4" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">22,207</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:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">113,164</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_z6KAAmxQH5I9" 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">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1379">-</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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1380">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz5Oq_zCC3522t8fqa" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">71,295</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:DeferredIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-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></tr>
  <tr id="xdx_40F_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz5Oq_z3yQwZFDvhLj" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">145,856</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="From2021-01-012021-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></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_zjCNQQQyu7E7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 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 -->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>

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

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"><p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zPQx4ry3mHIh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zkV0Z8yt88H3" style="display: none">SCHEDULE
OF RECONCILIATION OF INCOME TAXES</span>&#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" id="xdx_499_20220101__20221231_zJbWP80Qm3u8" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20210101__20211231_zXK2frTkD0J5" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_zu2ACpSeLdd2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Income before tax</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:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,859,085</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:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,650,756</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zHOsrbibMjCb" 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="From2022-01-01to2022-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="From2021-01-012021-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_z7IsTOAt4qDc" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,397,021</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,028,481</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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">243,167</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">29,508</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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">2,004,041</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">65,027</ix:nonFraction></td><td style="text-align: left">)</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"><span style="-sec-ix-hidden: xdx2ixbrl1405">-</span></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:IncomeTaxReconciliationChangeInEnactedTaxRate" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">337,961</ix:nonFraction></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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">226,611</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">86,696</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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">222,654</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">171,288</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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">145,856</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="From2021-01-012021-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></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_401_eus-gaap--CurrentIncomeTaxExpenseBenefit_z8gaW7vaD2ea" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">217,151</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,993,182</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZYhwLVYogt7" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">71,295</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:DeferredIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-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></tr>
  <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zdwexhlosr83" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">145,856</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="From2021-01-012021-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></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Included
in current income tax expense for the year ended December 31, 2022 is a recovery of $<span id="xdx_902_ecustom--CurrentIncomeTaxExpense_c20220101__20221231_zr8JQ2vWOJ9b" title="Current income tax expense"><ix:nonFraction name="FSI:CurrentIncomeTaxExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,476,088</ix:nonFraction></span> (2022 - $<span id="xdx_908_ecustom--CurrentIncomeTaxExpense_dxL_c20210101__20211231_znaO4oa2lkK" title="Current income tax expense::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1428">nil</span></span>) for a revision of estimated
current taxes payable for previous years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"><p id="xdx_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zMB7472eQDAg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021 are comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zzyVvVHj7Kvj" style="display: none">SCHEDULE
OF DEFERRED TAX ASSETS (LIABILITIES)</span>&#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">2022</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">2021</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: 60%; 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_98F_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjBkFtcjWMu8" title="Non capital loss carryforwards" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">891,954</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_980_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCK9kRgBTm6g" title="Non capital loss carryforwards" style="width: 16%; 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></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_98C_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zIVYodqoJ8T8" title="Intangible assets" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1436">-</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--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z82Sh7XhYAS3" 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></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; text-align: left; padding-left: 10pt">Property, equipment and leaseholds</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--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zheTqIjX1U09" title="Property, equipment and leaseholds" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipment" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">47,279</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_987_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zR14AboH1Wa3" title="Property, equipment and leaseholds" style="border-bottom: Black 1.5pt solid; 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="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 id="xdx_983_eus-gaap--DeferredTaxAssetsGross_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zVc36RcNa9D7" title="Deferred tax assets gross" style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">939,230</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--DeferredTaxAssetsGross_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjaYq5VYZAwe" title="Deferred tax assets gross" style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,050,628</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">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_98F_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zO9F5MXypChe" title="Valuation Allowance" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">939,230</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_982_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zopsoBfKYZZ6" 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></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</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--DeferredTaxAssetsNet_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zxN5S0uydLch" title="Net deferred tax asset" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1452">-</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_98A_eus-gaap--DeferredTaxAssetsNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zPk79oavyO92" title="Net deferred tax asset" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1454">-</span></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 style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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: 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">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2022</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">2021</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-left: 10pt">Net operating loss carryforwards</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zx7quhVoLHwh" title="Net operating loss carryforwards" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1456">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zW8f6rDgp2A5" title="Non capital loss carryforwards" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1458">-</span></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">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z9lsNWqmf2Q4" title="Intangible assets" style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">6,070</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8SXjfhiTNBc" title="Intangible assets" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1462">-</span></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">Investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zzZlTpuEXbd" title="Investments" style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsInvestments" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">7,676</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zf8Mx9acdJHc" 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></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--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0bPn1tEEsj" title="Property, equipment and leaseholds" style="text-align: right">(<ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">486,713</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zIyG7HRHkTti" 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">68,282</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_98B_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zNgwkBj4uGXk" title="Property, equipment and leaseholds" style="text-align: right"><ix:nonFraction name="FSI:DeferredTaxAssetsPropertyPlantsAndEquipment" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">274,289</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_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z17Hp0ue0ro7" 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">12,697</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">Financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zOYiX6FunMEh" title="Financial instruments" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1476">-</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_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zBBwqFKJj641" title="Financial instruments" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1478">-</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-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_980_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zfX9Mj4pIYq2" title="Deferred tax asset not recognized" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1480">-</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_98A_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zt73E9P3Zomk" title="Deferred tax asset not recognized" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1482">-</span></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; 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_980_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zmtJbt7yFYx9" title="Net deferred tax asset (liability)" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">226,170</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_98A_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_ziqaVAZKYX83" title="Net deferred tax asset (liability)" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">297,465</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A7_znlWgEzHn77" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_90D_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zQIHDJnEewH5" title="Operating loss carryforwards"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,878,060</ix:nonFraction></span> (2021 - $<span id="xdx_900_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z35R063Dmsi3" 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>) 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="From2022-01-01to2022-12-31" escape="true" name="FSI:ScheduleOfNonOperatingLossCarryforwardsTableTextBlock"><p id="xdx_895_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zvWxHL3QZ2gi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zDB4pPETi302" 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>&#160;</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: 52%; text-align: right">2030</td><td style="width: 0%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zreS5k1wcIRa" title="Total" style="width: 46%; text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31_custom_TwoThousandThirtyTaxYearMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">645,781</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">2031</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneYearMember_zU6OVSGS3Pr7" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31_custom_TwoThousandThirtyOneYearMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">919,683</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">2032</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTwoYearMember_zy3xV3FApd38" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31_custom_TwoThousandThirtyTwoYearMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">601,379</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_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenYearMember_zlpxDUt1lULl" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31_custom_TwoThousandThirtySevenYearMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,652,709</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">2039</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineYearMember_zAtu4w90EDpc" title="Total" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31_custom_TwoThousandThirtyNineYearMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">46,917</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">2040</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--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandFourtyYearMember_zU2QzuyHGOLa" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31_custom_TwoThousandFourtyYearMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">11,591</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_98E_eus-gaap--OperatingLossCarryforwards_iI_c20221231_zOJw2uzcgMn2" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,878,060</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AA_zFAOflZ4jng7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2022, 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2022 and 2021, the Company&#8217;s consolidated balance sheets did not reflect an asset 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; 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: 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 -->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"><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; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b></b></span></p>
</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:EarningsPerShareTextBlock"><p id="xdx_808_eus-gaap--EarningsPerShareTextBlock_zsNcB4UXsvO2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>14.
<span>Income Per Share</span> </b></span></p>

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

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"><p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_z6smLswLQgE4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zDGtTpiF1VIi" 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20220101__20221231_zAIa64gXVbui" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_ztb3sm9hHuTk" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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: 60%; 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: 16%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,021,604</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:NetIncomeLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,449,162</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_zkwImRlX5SG3" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,379,316</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,316,254</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zAGSN3yKH4m" 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="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,466,415</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="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,505,522</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_409_eus-gaap--EarningsPerShareBasic_zq5nc3uue8Pa" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.57</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:EarningsPerShareBasic" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.28</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--EarningsPerShareDiluted_zUNarqe6c643" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">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:EarningsPerShareDiluted" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.56</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:EarningsPerShareDiluted" contextRef="From2021-01-012021-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></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_zAB4pHz57Edk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 15, &#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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock"><p id="xdx_890_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_z7T04V8PGijb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zB0nYfc3ecl1" 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_498_20220101__20221231_z8nKvERc6Uig" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_zFMQI4Nhnd81" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1.5pt">Anti-dilutive options</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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,304,000</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">&#160;</td><td style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">21,000</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A0_zevyv5281C0i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zAGOxAnDrL29" title="Preferred stock, shares issued"><span id="xdx_908_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zi3Am3o5rjz3" title="Preferred stock, shares outstanding"><span id="xdx_900_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3IYB8HJ7Hm" title="Preferred stock, shares issued"><span id="xdx_904_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z1uQWuNldPW8" title="Preferred stock, shares outstanding"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt-sec:numwordsen" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt-sec:numwordsen" decimals="INF" unitRef="Shares"><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:PreferredStockSharesOutstanding" contextRef="AsOf2021-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, 2022 or 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"><p id="xdx_801_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zogxM1XrBFRb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>15.
<span>Stock Options</span></b></span><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; text-align: justify; text-indent: 0.5in">&#160;</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_pid_dp_uPure_c20220101__20221231_zhYordnpnMHb" title="Options granted percentage"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" contextRef="From2022-01-01to2022-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_901_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_dtY_c20220101__20221231_za1Lcs8XVk4e" title="Options maximum granted term"><ix:nonNumeric contextRef="From2022-01-01to2022-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; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"><p id="xdx_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zxwPch9uAy92" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_zmTrlLWlgpve" 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, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_zxnOtr8Fn5xa" title="Number of shares, Beginning Balance" style="width: 14%; 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="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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zspUpY3EggRf" 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_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z06EZ0bv7Gac" 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="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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20210101__20211231_zPbqzuSazOP9" title="Weighted average exercise price, Beginning Balance" style="width: 14%; 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="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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_z0JtIv2ZvtT1" title="Number of shares, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2021-01-012021-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 style="text-align: right"><span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20210101__20211231_pdd" title="Exercise price per share, Granted"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.61</ix:nonFraction></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" title="Weighted average exercise price, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zrSt66uLRGk2" title="Number of shares, Cancelled or expired" style="text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" contextRef="From2021-01-012021-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_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" 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_90A_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zh6BlQjD887d" 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 style="text-align: right"><span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zeFDpFUZCxok" title="Weighted average exercise price, Cancelled or expired"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.30</ix:nonFraction></span></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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_ziqYSKiISl3h" title="Number of shares, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-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_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" 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_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_pdd" 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_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" title="Weighted average exercise price, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-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>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20220101__20221231_zXoB3eETXFcb" title="Number of shares, Beginning Balance" style="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="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_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z2CPNhgPDvFf" title="Exercise price per share, Beginning 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_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zAmMy8PXbfih" title="Exercise price per share, Beginning 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="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20220101__20221231_zivQGeZcGp8h" title="Weighted average exercise price, Ending Balance" style="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="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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231_zyjNUl12qMsd" title="Number of shares, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">981,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_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zyilmJUT4Mh1" title="Exercise price per share, Granted"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" contextRef="From2022-01-012022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.55</ix:nonFraction></span> &#8211; <span id="xdx_903_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_z98lS7YJsExd" title="Exercise price per share, Granted"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice" contextRef="From2022-01-012022-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.61</ix:nonFraction></span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20220101__20221231_z2i1Jnf6MrL2" title="Weighted average exercise price, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.55</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_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20220101__20221231_zejewlsH9Hr8" title="Number of shares, Cancelled or expired" style="text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">13,486</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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z7DzanglMKh8" title="Exercise price per share,cancelled"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" contextRef="From2022-01-012022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.70</ix:nonFraction></span> &#8211; <span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zCEI6SlljaLc" title="Exercise price per share,cancelled"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice" contextRef="From2022-01-012022-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.61</ix:nonFraction></span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zLIKtxrGifU2" title="Weighted average exercise price, Cancelled or expired" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.32</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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20220101__20221231_zv8bsJSM4Hul" title="Number of shares, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">71,014</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_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_ztJFxzAjkyvd" title="Exercise price per share, Exercised"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" contextRef="From2022-01-012022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.42</ix:nonFraction></span> &#8211; <span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zUckAKWhdlZg" title="Exercise price per share, Exercised"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice" contextRef="From2022-01-012022-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.44</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--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20220101__20221231_zauAjwQKkhok" title="Weighted average exercise price, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.98</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, 2022</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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20220101__20221231_zre1ahLqdHq7" title="Number of shares, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,686,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">$</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_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zV4cec7jDHth" title="Exercise price per share, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.70</ix:nonFraction></span> &#8211; <span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zf65g4SxRv9a" title="Exercise price per share, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice" contextRef="AsOf2022-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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_c20220101__20221231_zCsjq6OTksr9" title="Weighted average exercise price, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.26</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, 2022</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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20220101__20221231_ztFK1xRSx3Ea" title="Number of shares Exercisable, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">680,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">$</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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z8R8xLcYrbak" title="Exercise price per share Exercisable, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" contextRef="AsOf2022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.70</ix:nonFraction></span> &#8211; <span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zoY0f2cYHXy7" title="Exercise price per share Exercisable, Ending Balance"><ix:nonFraction name="FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice" contextRef="AsOf2022-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_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_c20220101__20221231_zbuOYWAvdxqi" title="Weighted average exercise price, Ending Balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.92</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AC_zxQwhiUnhdG7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20220101__20221231_zxT1fFOz2tPi" title="Weighted-average remaining contractual life"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">3.90</ix:nonNumeric></span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"><p id="xdx_89B_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_z7fpM6eQ7YVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_z4M53mEL2Ge3" 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; border-collapse: collapse; width: 90%; margin-left: 0.5in">
  <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">2022</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">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; 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: 16%; text-align: right"><span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20220101__20221231_zkVa0On95SZi" title="Expected life - years"><ix:nonNumeric contextRef="From2022-01-01to2022-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: 16%; text-align: right"><span id="xdx_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_zhr5t9Jav4Th" title="Expected life - years"><ix:nonNumeric contextRef="From2021-01-012021-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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zy7dDJfkvWNh" title="Interest rate"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="From2022-01-012022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.76</ix:nonFraction></span> &#8211; <span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_znpoj4AtCcF7" title="Interest rate"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="From2022-01-012022-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">3.64</ix:nonFraction></span></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_zBhyq8BPRq88" title="Interest rate"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.23</ix:nonFraction></span></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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zMwDBd9DmNTl" title="Volatility"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" contextRef="From2022-01-012022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">66.01</ix:nonFraction></span>
- <span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zzPIwQBGYV2e" title="Volatility"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" contextRef="From2022-01-012022-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">69.66</ix:nonFraction></span></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_z8bHMwqZa0x4" title="Volatility"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">63.28</ix:nonFraction></span></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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zDWg1O60ipi4" title="Weighted average fair value of options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2022-01-012022-12-31_srt_MinimumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.46</ix:nonFraction></span> &#8211; <span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zw9X1pKbfXJh" title="Weighted average fair value of options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2022-01-012022-12-31_srt_MaximumMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.65</ix:nonFraction></span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zecYNL0YIWLc" title="Weighted average fair value of options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.23</ix:nonFraction></span></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022, the Company granted <span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z3cLGeDzKBvh" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2022-01-012022-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,000</ix:nonFraction></span> (2021 &#8211; <span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z4oOnTevuYk4" 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>) stock options to consultants and has applied ASC 718
using the Black-Scholes option-pricing model, which resulted in expenses of $<span id="xdx_90B_eus-gaap--StockOptionPlanExpense_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zfbMKQ4gNNF" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2022-01-012022-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,850</ix:nonFraction></span> (2021 - $<span id="xdx_903_eus-gaap--StockOptionPlanExpense_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zkDvEUxYGZT" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2021-01-012021-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">13,860</ix:nonFraction></span>). Options granted in other years
resulted in additional expenses of $<span id="xdx_900_ecustom--AdditionalExpensesDueToOptionsGranted_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zFxRxYjnvlJg" title="Additional expenses due to options granted"><ix:nonFraction name="FSI:AdditionalExpensesDueToOptionsGranted" contextRef="From2022-01-012022-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">62,187</ix:nonFraction></span> (2021 &#8211; $<span id="xdx_904_ecustom--AdditionalExpensesDueToOptionsGranted_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z3KlllCNcHt8" 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" unitRef="USD">51,210</ix:nonFraction></span>). During the year ended December 31, 2022, employees were granted <span id="xdx_903_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zkhY4H8qcC8b" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2022-01-012022-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">935,000</ix:nonFraction></span>
(2021 &#8211; <span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zITA2fLwZpOk" 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>) stock options, which resulted in expenses of $<span id="xdx_908_eus-gaap--StockOptionPlanExpense_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zQLW1C8YT1L3" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2022-01-012022-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">172,731</ix:nonFraction></span> (2021 &#8211; $<span id="xdx_904_eus-gaap--StockOptionPlanExpense_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z57hHZNvlHo" title="Stock option expense"><ix:nonFraction name="us-gaap:StockOptionPlanExpense" contextRef="From2021-01-012021-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">38,500</ix:nonFraction></span>). Options granted in other years resulted
in additional expenses in the amount of $<span id="xdx_908_ecustom--AdditionalExpensesDueToOptionsGranted_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zG1nkzo1hOaj" title="Additional expenses due to options granted"><ix:nonFraction name="FSI:AdditionalExpensesDueToOptionsGranted" contextRef="From2022-01-012022-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">149,380</ix:nonFraction></span> for employees during the year ended December 31, 2022 (2021 - $<span id="xdx_90D_ecustom--AdditionalExpensesDueToOptionsGranted_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zgvqINJWhai" 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" unitRef="USD">106,542</ix:nonFraction></span>). There were
<span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zAuSgxXj6wM8" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2022-01-012022-12-31_custom_EmployeesMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">54,500</ix:nonFraction></span> employee and <span id="xdx_906_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zoZehF07nzr9" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2022-01-012022-12-31_custom_ConsultantsMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">16,514</ix:nonFraction></span> consultant stock options exercised during the year ended December 31, 2022 (2021 &#8211; <span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zBhHrh6ZkbXc" 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;
<span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zmnZWuzHzEh7" 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).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, there was approximately $<span id="xdx_904_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pp0p0_c20221231_zYVs7sd7EQA2" title="Stock vested compensation non vested"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,432,960</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_90D_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtM_c20220101__20221231_zq83mTKwFPZh" title="Weighted average period expected to be recognized"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:durmonth" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">3.9</ix:nonNumeric></span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 is $<span id="xdx_90D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zUtqorZcrtEg" title="Aggregate intrinsic value of vested options"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">69,190</ix:nonFraction></span> (2021 &#8211; $<span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zmD7dNcuJc7c" 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" unitRef="USD">712,945</ix:nonFraction></span>). The intrinsic value
of options exercised during the year ended December 31, 2022 was $<span id="xdx_90C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_c20220101__20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_za2zvUSZlYhg" title="Aggregate intrinsic value of vested options exercised"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" contextRef="From2022-01-012022-12-31_us-gaap_CanadaRevenueAgencyMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,989</ix:nonFraction></span> (2021 - $<span id="xdx_902_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_c20210101__20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCT1gTYkzEX2" 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" unitRef="USD">203,701</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock"><p id="xdx_806_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zlDgb3kqVX17" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>16.
<span>Capital Stock</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. </span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_82B_zrxRWQTobka2">CAPITAL STOCK</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022, <span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20220101__20221231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember_zbGcHeDSYCyk" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_StockOptionMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">54,500</ix:nonFraction></span> shares were issued upon the exercise of employee stock options (2021 &#8211; <span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember_zkak1cLOdVjl" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_StockOptionMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">61,500</ix:nonFraction></span>) and <span id="xdx_905_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20220101__20221231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember__srt--TitleOfIndividualAxis__custom--ConsultantMember_zBPPuqLHCocj" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_StockOptionMember_custom_ConsultantMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">16,514</ix:nonFraction></span>
shares were issued upon the exercise of consultant stock options (2021 &#8211; <span id="xdx_90F_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember__srt--TitleOfIndividualAxis__custom--ConsultantMember_zjQSCK7D8nO2" title="Stock options exercised"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_StockOptionMember_custom_ConsultantMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">33,201</ix:nonFraction></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="us-gaap:MinorityInterestDisclosureTextBlock"><p id="xdx_802_eus-gaap--MinorityInterestDisclosureTextBlock_z16HPtiFp8V1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>17.
<span>Non-Controlling Interests</span> </b></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 (&#8220;LLC&#8221;) that manufactures and distributes golf, turf and ornamental
agriculture products in Mendota, Illinois. The Company owns a <span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zzPQ9lwOzoN3" title="Subsidiary company ownership interest rate"><ix:nonFraction name="us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" contextRef="From2022-01-012022-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 (&#8220;NCI&#8221;) owns the remaining <span id="xdx_908_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zE66O1R9bEel" title="Related party owner ship percentage"><ix:nonFraction name="us-gaap:MinorityInterestOwnershipPercentageByParent" contextRef="AsOf2022-12-31_custom_EnpnvestmentsLlcMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">35</ix:nonFraction></span>%
interest in ENP Investments. 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 NCI&#8217;s ownership interest in ENP Investments is recorded in non-controlling interests in these
consolidated financial statements. The non-controlling interest represents NCI&#8217;s interest in the
earnings and equity of ENP Investments. ENP Investments is allocated to the TPA segment.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; margin: 0pt; 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; 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; 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_903_eus-gaap--PaymentsToMinorityShareholders_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zWNtLizmxhfg" title="Partnership distribution to non-controlling interest"><ix:nonFraction name="us-gaap:PaymentsToMinorityShareholders" contextRef="From2022-01-012022-12-31_custom_EnpnvestmentsLlcMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,506,518</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31" escape="true" name="FSI:ScheduleOfDistributionsTableTextBlock"><p id="xdx_896_ecustom--ScheduleOfDistributionsTableTextBlock_z37h3PNMIgF8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zpuE50pys3sk" style="display: none">SCHEDULE
OF DISTRIBUTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_900_eus-gaap--MinorityInterest_iS_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zefn4r6KjVmk" title="Distribution to noncontrolling interests, Beginning balance"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,561,751</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_980_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zY5i7lcMQxEf" 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" unitRef="USD">804,003</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_981_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zzBl4gGkY16f" 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" 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: White">
    <td>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--MinorityInterest_iS_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zQQ1mv3gv25k" title="Distribution to noncontrolling interests, Beginning balance" style="text-align: right"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2021-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,602,843</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_988_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zRntTrdpcRxj" title="Distribution" style="text-align: right">(<ix:nonFraction name="us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders" contextRef="From2022-01-012022-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">689,434</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_98E_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_z7Ev46Utgera" title="Non-controlling interest share of income" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" contextRef="From2022-01-012022-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">691,625</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, 2022</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--MinorityInterest_iE_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zCwbSJ8pdeC1" title="Distribution to noncontrolling interests, Ending balance" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MinorityInterest" contextRef="AsOf2022-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,605,034</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A2_z8xIyJomh2Wf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2022, the Company had sales of $<span id="xdx_904_eus-gaap--Revenues_c20220101__20221231__custom--StatementEquityComponentsAxisipAxis__us-gaap--NoncontrollingInterestMember_zZI1h3GlA0Cc" title="Sales"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember84259375" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,667,815</ix:nonFraction></span> (2021 - $<span id="xdx_90B_eus-gaap--Revenues_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zSiG7pZXJPq3" title="Sales"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,877,690</ix:nonFraction></span>) to the NCI, of which $<span id="xdx_90B_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zZJsFg4TnQUe" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2022-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,634,083</ix:nonFraction></span> is included within Accounts Receivable as of December 31, 2022 (2021 &#8211; $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zgwUt3QtbcV8" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2021-12-31_us-gaap_NoncontrollingInterestMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,215,119</ix:nonFraction></span>).</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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 -->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; 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"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b></b></span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:SegmentReportingDisclosureTextBlock"><p id="xdx_80A_eus-gaap--SegmentReportingDisclosureTextBlock_zU5g56rY6nYf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>18.
<span>Segmented, Significant Customer Information and Economic Dependency</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">.
</span></b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"><span id="xdx_82E_zZ1MSBhVX2R8">SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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 save 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
Biodegradable polymers, also known as TPA&#8217;s (as shown under the column heading &#8220;BCPA&#8221; below), 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; 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; 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; 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; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock"><p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z7Z8btuCkj9k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zMRQLNxo7j3a" 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="display: none; vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20220101__20221231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zKvja07INZr4" 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" id="xdx_49D_20220101__20221231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zeeSKFpH48hl" 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" id="xdx_49D_20220101__20221231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zea4rkm3Wkaf" 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 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 id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zC17GTw1IMY" 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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">528,462</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,312,007</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-012022-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,840,469</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InterestExpense_zIdrvcu0mnh" 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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1746">-</span></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:InterestExpense" contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">292,949</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:InterestExpense" contextRef="From2022-01-012022-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">292,949</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DepreciationNonproduction_zK6Ybe8yMmNh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">33,876</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:DepreciationNonproduction" contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,243,555</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:DepreciationNonproduction" contextRef="From2022-01-012022-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,277,431</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--IncomeTaxExpenseBenefit_zJphmKrXdUw" 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 style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">18,898</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:IncomeTaxExpenseBenefit" contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">126,958</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:IncomeTaxExpenseBenefit" contextRef="From2022-01-012022-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">145,856</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--NetIncomeLoss_zreNNY1vMem8" 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 style="text-align: right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">334,525</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:NetIncomeLoss" contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,047,754</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:NetIncomeLoss" contextRef="From2022-01-012022-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,713,229</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--Segmentassets_zthVwUC0mf54" 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 style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,810,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="FSI:Segmentassets" contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">48,777,101</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:Segmentassets" contextRef="From2022-01-012022-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">51,587,192</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zD2BpGRFH8xj" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1766">-</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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,981,307</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:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2022-01-012022-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,981,307</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; 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; 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; 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: 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" id="xdx_49F_20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zCTooJ35VbO2" 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" id="xdx_49D_20210101__20211231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zgrp8wqB2Rpc" 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" id="xdx_491_20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zX69hz1JK1y7" 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 id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zk0IIfgIumab" 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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,416,335</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InterestExpense_zUu6FD8UuKPd" 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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1774">-</span></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:InterestExpense" contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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="us-gaap:InterestExpense" contextRef="From2021-01-012021-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">199,930</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DepreciationNonproduction_zH0EPE47hbhd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationNonproduction" contextRef="From2021-01-012021-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">965,935</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_zy6QWXiORxif" 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 style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,332,115</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:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,356,499</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--NetIncomeLoss_zWCfIrszfB58" 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 style="text-align: right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,663,251</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:NetIncomeLoss" contextRef="From2021-01-012021-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,294,257</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--Segmentassets_zowGpOOAzbdk" 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 style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="text-align: right"><ix:nonFraction name="FSI:Segmentassets" contextRef="From2021-01-012021-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,551,270</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zG3wEH909EC2" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1794">-</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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember" format="ixt:numdotdecimal" decimals="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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31_custom_SegmentMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">782,219</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock"><p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zvF7m47amyM2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B6_znzandgoWMmi" 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" id="xdx_49B_20220101__20221231_zTd2rk0hK9de" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_498_20210101__20211231_zzNozA9Ek9oa" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_40E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__country--CA_zPqskhkNCZr7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Canada</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-012022-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" unitRef="USD">552,123</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" unitRef="USD">525,900</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zA91bsqjuLW8" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-012022-12-31_custom_UnitedStatesandAbroadMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,288,346</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_UnitedStatesandAbroadMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">33,890,435</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zU0c1GmPLfMi" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,840,469</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:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,416,335</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock"><p id="xdx_894_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zSM0dntXikqb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_z7JD6HCLxJsl" style="display: none">SCHEDULE
OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE</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" id="xdx_49C_20221231_z2j1FRu4OSO" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20211231_zkepl3va18A8" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_409_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--CA_zIVj4htYxw6f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Canada</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:NoncurrentAssets" contextRef="AsOf2022-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150,890</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:NoncurrentAssets" contextRef="AsOf2021-12-31_country_CA" format="ixt:numdotdecimal" decimals="0" unitRef="USD">191,752</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--US_zocDXUOKG2pb" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2022-12-31_country_US" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,699,896</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:NoncurrentAssets" contextRef="AsOf2021-12-31_country_US" format="ixt:numdotdecimal" decimals="0" unitRef="USD">10,105,202</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--NoncurrentAssets_iI_zf83vDN2usac" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NoncurrentAssets" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,850,786</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:NoncurrentAssets" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">10,296,954</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_zPbCa3voqd6i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_907_eus-gaap--AccountsReceivableNet_iI_c20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zbCp893V5Wcc" title="Accounts Receivable, after Allowance for Credit Loss"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2022-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">27,775,617</ix:nonFraction></span> (<span id="xdx_90C_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--ThreeCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zlTQQ7EXmga" title="Stock option exercise percent"><ix:nonFraction name="FSI:StockOptionExercisePercent" contextRef="From2022-01-012022-12-31_custom_ThreeCustomersMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">61</ix:nonFraction></span>%) of sales made in 2022 (2021 - $<span id="xdx_90B_eus-gaap--AccountsReceivableNet_iI_c20211231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zpmQKjzKByg5" title="Accounts Receivable, after Allowance for Credit Loss"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2021-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">16,917,947</ix:nonFraction></span> or <span id="xdx_90D_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--ThreeCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zjTnnOfZQk5j" title="Stock option exercise percent"><ix:nonFraction name="FSI:StockOptionExercisePercent" contextRef="From2021-01-012021-12-31_custom_ThreeCustomersMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">49</ix:nonFraction></span>%).</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:SubsequentEventsTextBlock"><p id="xdx_80C_eus-gaap--SubsequentEventsTextBlock_zdClwWx3yPDc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>19.
<span>Subsequent Events</span>. </b></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company issued <span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20230101__20230331__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zmbwWQnNm4kl" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2023-01-012023-03-31_custom_EmployeeMember_us-gaap_SubsequentEventMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">8,000</ix:nonFraction></span>
shares to employees and <span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20230101__20230331__srt--TitleOfIndividualAxis__custom--ConsultantsMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zncavUHT15xg" title="Stock options granted"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="From2023-01-012023-03-31_custom_ConsultantsMember_us-gaap_SubsequentEventMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,272</ix:nonFraction></span>
shares to consultants upon the exercise of stock options in the three months ended March 30, 2023.</span></p>
</ix:nonNumeric><p id="xdx_816_zVLMYt56KYyl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- 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 -->23<!-- 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"><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; text-align: justify"><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; 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; 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; 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; 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; 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; 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; 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, 2022 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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, 2022, 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; 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; 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, 2022.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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
    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; 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; 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; 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; text-align: justify"><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; 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: 0.5in; width: 90%; 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: 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: 1%"><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: 7%; 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: 1%"><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: 71%"><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">66</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">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">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">57</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">71</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">42</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">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">Director</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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; 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: 41; 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"><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; 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; 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; 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; 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; 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; 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; 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; 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, 2022 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; 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; 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; 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; 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; 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: 1%; 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: 71%"><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="margin: 0pt; text-indent: 0pt">&#160;</p>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>


<!-- Field: Page; Sequence: 42; 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; text-indent: 0pt"><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; text-align: justify; text-indent: 0pt"><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; text-indent: 0pt; margin: 0pt; 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; 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; 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; 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, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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">2022</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">769,293</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">660,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: 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">769,293</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">2021</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">747,920</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">747,920</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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>

<tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td></tr>
<tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <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">(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; 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; 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, 2023 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; 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; 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; 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; 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; 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; 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; 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; 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, 2022 we issued 5,000 options pursuant to the Non-Qualified Plan (2021 &#8211; 170,000).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, options to purchase 710,000 shares of our common stock were outstanding under our Non-Qualified Stock Option Plan.
The exercise price of these options varies between $1.70 and $4.13 per share and the options expire at various dates between on December
31, 2022 and December 31, 2026.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Stock
Option Plans</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
2022 we adopted a Stock Incentive 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 Stock Incentive Plan.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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, 2022 we issued 976,000 options pursuant to the Stock Incentive Plan (2021 &#8211;
nil).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, options to purchase 976,000 shares of our common stock were outstanding under our Stock Incentive Plan.
The exercise price of these options are $3.55 per share and the options expire on December 31, 2027.</span></p>


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


<!-- Field: Page; Sequence: 43; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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 both our Non-Qualified Stock
Option Plan and Stock Incentive Plan as of December 31, 2022, our most recently completed fiscal year.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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>&#160;</td>
    <td colspan="2" style="text-align: center">(a)</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">(b)</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: center">(c)</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 31%; 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">710,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: 18%; text-align: right">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;2.87</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: 21%; text-align: right">57,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Stock Incentive Plan</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">976,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">3.55</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">524,000</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 and we expect our Stock Incentive Plan to be approved by
our shareholders at our next Annual General Meeting.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-align: justify"><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; 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; 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 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 -->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"><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; 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: 72px"><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-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; 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, 2023 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; 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: 60%; 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: 16%; text-align: right">4,441,615</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: 16%; text-align: right">35.7</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">35,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">All officers and directors</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: 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,491,615</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">36.1</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: rgb(204,238,255)">
    <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,289,556</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">10.4</td><td style="text-align: left">%</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><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, 2023, listed below.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: -27pt"><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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name</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">&#160;</span></td>
    <td colspan="2" 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">No.
    of Options</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">&#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">&#160;</span></td>
    <td colspan="2" 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">Exercise
    Price</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">&#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">&#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">Expiration
    Date</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td colspan="2" 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>
    <td colspan="2" 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>
    <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: bottom; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 48%"><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; width: 1%"><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: 1%"><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: 14%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,000</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 1%"><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: 1%"><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: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">$</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 14%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.46</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 1%"><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: 1%"><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: 16%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">December
    31, 2023</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: white">
    <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: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,000</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">$</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.44</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">December
    31, 2024</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: #CCEEFF">
    <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: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,000</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">$</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.44</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">December
    31, 2025</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: white">
    <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: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5,000</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">$</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.61</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">December
    31, 2026</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 72px"><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; 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; 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; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><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: 72px"><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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smythe
LLP examined our consolidated financial statements for the years ended December 31, 2022 and 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smythe
LLP was paid $128,456 in the fiscal year ended December 31, 2022 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 $114,800 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 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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; 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; 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, 2022 and 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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, 2022 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; 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: 72px"><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; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><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: 72px"><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: 10px; 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="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">101.INS</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">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">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">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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">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">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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">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">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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">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">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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">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">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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">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">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; 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; width: 24px; text-align: justify"><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; text-indent: 0.5in"><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"><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 -->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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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; 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: 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; 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; 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">March
    31, 2023</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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: 42%; 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: 24%; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March
    31, 2023</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"><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">March
    31, 2023</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">March
    31, 2023</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March
    31, 2023</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">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">March
    31, 2023</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">March
    31, 2023</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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


<!-- Field: Page; Sequence: 47; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;&#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="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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: 0pt; text-align: right"><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; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><IMG SRC="ex23-1_001.jpg" ALT="" STYLE="height: 53px; width: 210px"></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><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; 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; 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; 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 31, 2023, relating to the consolidated financial statements of Flexible
Solutions International, Inc. (the &ldquo;Company&rdquo;) for the years ended December 31, 2022 and 2021 appearing in the Company&rsquo;s
Annual Report on Form 10-K for the year ended December 31, 2022. We hereby consent to the incorporation by reference of such report in
the Company&rsquo;s registration statements on Form S-8 (File No&rsquo;s. 333- 270291, 333-205566 and 333-205375).</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><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: 0pt; 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; 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">March
    31, 2023</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; 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"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><IMG SRC="ex23-1_002.jpg" ALT="" STYLE="height: 84px; width: 670px"></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><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="text-align: left; width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</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="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"></FONT></P>

<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; 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: 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: 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; margin: 0pt; 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; 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; 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 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-15(e) 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; 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; text-align: justify"><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; text-align: justify"><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="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>
    <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>
    <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; text-align: justify"><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">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="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>
    <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>
    <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; text-align: justify"><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">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="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>
    <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>
    <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; text-align: justify"><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">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; 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; text-align: justify"><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; 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; text-align: justify"><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; text-align: justify"><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; text-align: justify"><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>
    <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; text-align: justify"><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">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; 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:
    March 31, 2023</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%; border-bottom: black 1.5pt solid"><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"><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"><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"><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; 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; 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; 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"><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; 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; 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: 24px; text-align: justify"><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 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; text-align: justify"><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; text-align: justify"><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; text-align: justify"><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; text-align: justify"><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; text-align: justify"><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; text-align: justify"><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; 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: 24px; text-align: justify"><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: 24px; text-align: justify"><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="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>
    <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>
    <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; text-align: justify"><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">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="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>
    <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>
    <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; text-align: justify"><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">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="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>
    <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>
    <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; text-align: justify"><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">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; 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: 24px; text-align: justify"><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; 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: 24px"><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: 24px"><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; 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:
    March 31, 2023</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%; border-bottom: black 1.5pt solid"><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"><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"><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="font: 10pt Times New Roman, Times, Serif; margin: 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"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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 of the Company for the year ended December 31, 2022 (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"><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:
    March 31, 2023</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%; border-bottom: black 1.5pt solid"><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"><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"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>6
<FILENAME>ex23-1_001.jpg
<TEXT>
begin 644 ex23-1_001.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  $! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_
MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P  1" !0 4 # 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#^_<D $G@
M$D^PY--\U,$[N%SG@\8(![>I%*XRCCU5A^8-?SU?\%;_ /@KO\9/^">WQY^'
M?PM^'/PR^''C;1_&/PIMO'E]?^,Y?$L-];:E=>*_%F@_8[5=%U*S@:S\G0[.
M?,T+2K*TX+E'14]KA[(,SXHS6EDF348XC,J]&M7I4IU(4:;IX>*E5E*K4:A'
MEB[N\M%9VU5_GN)^)\KX1RJ>=9S4J4LOIXC"8:<Z5*=:HJF*JSIP2IP3D_A6
MMK)[O73^A/S8_P"]^C?X4>;'_>_1O\*_B7_XB</VH?\ HWWX%_\ @3XW_P#E
MW1_Q$X?M0_\ 1OOP+_\  GQO_P#+NOT#_B!WB/\ ]"W*_P#P[T?_ )6?FO\
MQ'WP\_Z"LV_\--3_ .7']M'FQ_WOT;_"CS8_[WZ-_A7\2_\ Q$X?M0_]&^_
MO_P)\;__ "[H_P"(G#]J'_HWWX%_^!/C?_Y=T?\ $#O$?_H6Y7_X=Z/_ ,K#
M_B/OAY_T%9M_X::G_P N/[:/-C_O?HW^%'FQ_P![]&_PK^)?_B)P_:A_Z-]^
M!?\ X$^-_P#Y=T?\1.'[4/\ T;[\"_\ P)\;_P#R[H_X@=XC_P#0MRO_ ,.]
M'_Y6'_$??#S_ *"LV_\ #34_^7']M'G1G^(]^"K G'7:"H+=."H.>V:>"" 1
MG! (R"#@\\@@$'V(!'<5_(-^S+_P<.?M&?'/]HSX%?!C7/@=\&-%T;XK?%KP
M!\/=6U?29?&$NJ:;I_BSQ+IVBW=]8"[UF:U^VP0WCO;&XAEM_.""6)HR2/Z]
MHL^5'DECY:98@ D[1DD* H)ZD   \  5\9Q3P=Q!P9BL+@N(</A<-B,9AGB\
M/'#8R&,C*C&K[%R<Z<(P34[1:YG*,GRR46??<(\:Y%QMA<7C,AKXFO0P.(CA
M,3+$X1X22Q$Z2KQ4(RJ3DXNE)6;BHR<7*,FM%)1117S!]:%%%% !1110 444
M4 %%%% !1110 4444 %%%% !117\A/\ P5:_X.*_VD/V ?VX/BI^RS\/O@7\
M$?&WA7P%IOP^O]/\3>,+GQVGB&[D\8> /#OB^ZAO(-%\0:?IH2VNM9N+6V:"
M'=]GM4:<"248 /Z]J*_+K_@D+^W5\0?^"BG[&WAO]I;XD>#_  AX'\1ZUXZ\
M?>%)M \$'66T*&T\):JEA:7"/KU_J.HF[N$;S+@&X,!+CRMA1HS^H;LRJ65=
M[#!"Y )Y&<$D#(&2,D9QC(H =17\%OQ2_P"#LK]KCP%\3OB)X%LOV;?V>+O3
M_!?CWQ7X2M+Z\F^)(OKRT\.^(;[2(+FY\CQ4+87-S#:(\[0P+"LKNT<(C"K7
M]V_AG4I]9\.Z%J]U''%<:II&G:A-'$&$:27EI%<.L:N6=8PTA"*[NZK@,[,"
MQ -NBBB@ HHHH **** "BBB@!&^ZWT/\J_B._P"#EW3M1UK]M?\ 9^TC1]/O
MM6U74_V>-'M-.TS3;2XOM0O[J7XE_$18K6SL[6.6YN;B5OECAAB>1SPBDBO[
M<6SM;')P<#WQ7EVI?"?X<W?Q#3XP7O@K0+WXE6?A2U\'V?C6\TRWN=?T[POI
M^J:SJT.C:9J,\<D^F6;7VNZG=7::>]JU\T\?VUYTM+18/K^!>*H\%\1T^(/J
MDL=4P^79IAZ6%C+D52IBZ%*E!RDDVHQEJU'WY+W8IMW7PWB'PI+C7AR601Q<
M<"JV8Y;B:F)G'GC3HX6M6JU7;:_*F[R:BEK)I;_YO&A?\$P/^"A'B3PY=>*]
M*_9$^.!T>VA%SC4/!6HZ-JES;F".Y633/#^MKINOZNLD,L;POIFG722[MD1D
ME!2OEOXE_!CXO?!G5#HOQ<^%_P 0/ACJV5":?X]\(:_X3NIBP4JMM%KEA9-=
M,=ZC;;"5MV4(WJRC^Z;XC?\ !P)_P3U^''C_ %OX=_VK\5/&XT/5YM&U#QEX
M%\#6VI>!VO;6\GL+][#5=2\3Z3J6L:?830MB_P!+T6^L;R'9-I,VHQXDKZX\
M ?ME_P#!/G]MGX9^)Y].^)OP@^)?@G3O#^JZQXW\#_$73;&TU?0M L-(O-3U
MN\UWP%XXL+/6/L&G:/;WQO=4BT>\TU(;:Z%O>3&-F7^@9>,''V5+"X_B'PXQ
ME/)L0X2E7PE#,</7ITJMG3;>)>+I1<XN\/;TZ"E:T4V]/YZ7@_X?YK*O@.'?
M$O U\ZHQE%8?%5L#4H5*]/2I"*I1PE2:C*R:HSQ$HWO*VB?^:KN7@9!STP<@
M\D<$9&,@@'H<'!I:]N_:7\3_  E\:?'[XM^*/@1X)7X>_![5_'&M7'PZ\)13
MWLT>F>%8KC[-I\BIJ,DEU8C5C;RZX-&,AMM!_M,:'IX;3]-MII?$:_H?!UZN
M)PF&Q%;#5,'5KT*=6IA:SBZM"<XJ3IS<'*/-&_*TFVI1EJU9O^=L71I8;$XC
M#4\1#%*A6G36(I)JC5C'2,J?,KM.S;=VFFK6U"BBBNDYC[%_X)Y?\GX_L;_]
MG,_!3_U86@5_J 1_ZN/_ '%_]!%?Y?\ _P $\O\ D_']C?\ [.9^"G_JPM K
M_4 C_P!7'_N+_P"@BOY)^D=_R/\ A;_L19C_ .KJ!_7GT:_^1)Q7_P!CG+?_
M %3L?3694!9V"J, LQ  R0!DGCDD >YIU?R__P#!P;_P6D\7_L':9I/[*_[.
MHM;7]H;XL^"I_$.J_$AY_P!_\%_"&H7USIFC:IHU@]O<6U_XS\23:3XA.DSW
M@^R^';/2_P"TI+*^N-1TR6W_ )U/Z4NENTO70_I:USQKX-\+P?:?$OBSPUX=
MML0L;C7=<TS2(0+F3R;?=+J%U;HIGE_=0@L#+("D89@0-.QUK1]4A:?3-4T_
M4H$.UI=/O+>]C#;!)MWVLDJEBC*X4$L4(8#:0:_R&/A7^R!_P41_X*'ZIXE^
M*OPV^$W[0'[3MZNJ26GB/XG:O+JOB2TGULVUUJ<^EW/Q!\9Z@FGW&K6\!N+F
M[T=]9GNX?[6L!+:Q/JEC%>T/$/P[_P""AO\ P3I\5V.J:]X;_:D_9#U^2YM;
MG3=7MH_B%\*M-UB\86\T,EIKFFSV.C>)9HU:""[@AU*_6!SY-S;F64D@'^P,
MLD;*75U91G+*01P,]1GL01Z@@C@BG!@1N!XQGOTQGIUS[8S[5^"G_!OU^UO^
MVG^V-^Q5+\3/VM=/TK5-.T_Q==>$/A'\6UT\Z1XM^+FA>'TFB\4>)O$VG6"6
MWAZ6#1O$+IX3TOQ!HME8KK6I:'XDM-7TM;S2FU36/\_/]N/XO?%C3?VV/VPK
M.R^*/Q%M+"R_:F_:!M[2RMO&?B**UL[.W^+/BV*WL[6VCU%(HK6V@1(+>W11
M'%"B1* B@ "Z6[2]=/S/]?)KB%%9GD150$L6.T* NX[LXQM!!;/W<@'!(KRL
M?'WX%'Q7)X#'QI^$S>.87$4O@M?B+X0/BV.5H4N%C?PV-8.LK(UO+%.L9L@[
M0R1R %'5C_FD_&__ (*N_M6?M1?LR_LH?\$^_P!ENV^-,&B_#GX.^&?"OQ5@
M^'T_BS6OB5^T%\09+.P@U73[RT\,/=^*]1\"Z)=2G3M/TIY+N7Q3J-TVK:K'
MY/\ 9-E'^.7Q.^"WQA^">LV>A?&CX3?$OX2^(9K87FGZ/\3_  +XJ^'^MS6B
MB%Q=VEAXGTO1[^:W6.XM0)XXGB$<MN=W[U6< _VF$GAD4,DBLI 96!R&!S@J
M>C @$C;G(Z=14%WJ%C80275]>6UG;1!6EN+F:.&"-68*K/+(RHJEB%R6 SQG
M@U_FX?\ !&O_ (+X^//V%1XS^%?[46N?$;XT?L^R^"-8U'X<:?/K%UXA\5?#
M[Q[X>TJ[N]!\,>&+G6)IFL_!_CR>--!OK"2Y&B>%-3;2=:L;&TT]=7AG^!_V
MJ?VR?^"AG_!7;XT>+-=BT/XX_$KPTNI75YX9_9R^#.A>/_'/P_\ AWX=*-+8
M:?!X,\*6.IPW-]:VMG*^H>+M1LSK^KW-M>7MU>6MJL.DZ8$SDXQ;2N]-+-_E
MJ?ZGWA#X[?!'X@ZK=Z#X"^,7PM\;:Y8;OM^C>$?B!X4\2:K9;)3 WVO3]'U:
M\N[;;.K0MYT*;908SAQMKU'SHB-P=2,9R.002 ,$9SRP'&>3CKFO\5?Q?X$^
M*7P3\:/X?\>^$?B#\(OB#H4MI?2Z#XM\/:_X \9:/,"9[.Z;3]8L=)\0Z6[;
M?-MYD2V;<AGA82[Y#_<K_P &W?\ P6'\8_'R2_\ V%?VK?'>K>,/BGINGW6N
M?L__ !*\6WTNJ^(/&OAG2+2:3Q!\-O$^NW=Q/>:SXB\,:98?V]X6U?4X+C5-
M7\/)K=GJ=[+<:%I;WP$)<R3=DW?39[]GKMY']BBR(^=K XZX_P _Y!!Z$91)
M8Y#A&R1G(PPQM8HP;(&U@P(*G##'3%?Y6W_!:#X4_&7]BO\ X*(_'OX8Z;\0
M?B1I'@#Q;K\_Q?\ A+';^-?%,-G_ ,*]^)5Y>:[9Z;9PC41#';^%-9;6/!<*
M1B)E7PXP9)!M=?[L_P#@@C^UG%^US_P35^!OB#4;ZYO?'OP=TU/V>_B1)>S2
MW-Y/K_PMTS2M-T/5+F[G59[^?7O =UX2UN]O9O->35K_ %2(W=_Y'VR8'=;7
M5^UU?[KW_ _9JFA@6*C)(&3P<#IP6QM!Y'RYSCG& :4D#&2!DX&2!DX)P,]\
M GZ U_FC_P#!QO\ MM>+?BS_ ,%+?B!X'^&WC[QCH/@S]G'PQH'P5CAT#Q%J
MFC:?J7BRQFU'Q/XZU06VGRV1::W\3>(KOPNT]PUT+E/#,=Q:2I:R1H09_I:&
M>)2RM(H*%58$XVLP# 'WVL&/HIW'"\U_EZ?\')^3_P %?_VCGVMM.@? TABK
M $'X'^""",@9X8?KW5L??'[.E]\:?V4_^#?O]H'XURGXI>,_CK_P48^)-G\*
M/A%'I]SXJ\5>)]&^"^A6NI:'JWB2&S$LVJ:)87VGV'QIEM];L3:V]W)XJ\"3
MQZDO]I:7*W\K7C=/'$7B.\B^(R>*XO%JQVG]HQ^-AK"^)-GV2,V!U :^L>JM
MC3OLR6GVE%1+*. 6T<<. 0RG.4791OHNC?Y'^DS_ ,&O3K_PZA\!*3AC\9?C
M60"",@>(X.F1[' ZG#$?=./Z(6=<E,@-@X!XSP3QGKP,G&<=Z_QC/ MK^TG-
MX=@/PQM?C@_A5KJ[:&3P'#X^E\/RW2.$O%B&A"321<13O_I3VZ)<F5PES(XV
M(/[F/^#3^W^,$/P@_;#/Q>7XF0WH^)7PO718OB.GB:*=K<^$_%#7G]F)XF19
MC")!;M<BS(BW^2TP+>60%0DY1NU9WM:S7YG\+/[2'_)POQY_[+1\3/\ U-]9
MK_97\%2Q1>"/";R2(B1^%M#>1W8*L:II-H[,[$@(JJ0S,Q 52"2 17^-5^T<
M W[0WQZR< ?&7XH.2,9 3QIK;G@D \+T)4'H67.1^QO_  47_P""G?[87_!5
MKXR?\*B_9<T;XXWG[//@'38O#O@3X/?!O0_'&J>(?']II=BUC<?$3XB:#X+L
M[C6-6O\ Q#'!<76GZ%J4$^G>%-"9-,A@_M"?Q%?ZJ%/1-]D_R9_I.:=\>_@9
MK'BF[\#:1\9_A3JOC>P,XOO!NF_$/PC?^++,VRJ]P+KPY:ZO+K-N8(W22;S;
M)/*C=7?:C GU598VY#?3@@G(R-H(!88.<J"/R-?XL_Q,^#GQB^"&NV6A_%WX
M4?$GX->))%_M'3='^(O@7Q1X UUXS]GN5O;.S\5Z7IFJ31JIMY4N5610DD4N
M\ET<_P!5/_!O!_P6G\>^!?BWX>_8D_:Q^)>K^+/A?\3);+P_\"OB!\0?$-_J
M^I_#7Q^&CM=(\!7&M:F+N^F\%^.9+I;'33J6J?9?"7B2#0[+38(-$U>[72PB
M$W)/F2B[Z7TO]]OP/[\Z:SHGWV5<]V( R>@R<#)P<#J<''0XQ_$'B+0_"VA:
MUXF\1:QINAZ!X=TG4-<US6M5O(++3-(TC2K.6_U'4]1O)Y(X+6QL;*":ZNKB
M:1(H;>-Y7=44D?YSW_!8G_@X+^-/[6/Q&U3X2?L=^.O'?P6_9D\&7M_I#^*/
M"6KZUX(\?_'#4+>66&X\1:WJVC7=CK_AOP05AD_X1CPA:W]G?7VG/)K'C-$O
M=13POX9#0_T(_&'QZ^!OP\U*WT;Q_P#&7X5>!M8O%9[32?&/Q"\)>&=2NT28
M6SO:V.MZO8W5PB7!$#/#$ZK+^[8AN*])L=5TS4X%N=-U"SU"V<D)<V5S#=6[
M[1D[9X'DB8 <DAR,=Z_R'OAM_P $U/\ @HQ^T+X4A^+'P\_9*_:'^(_A+Q/)
M)JNG>,X? VO367B5;QHI9-5TG5-<2UD\0VERT\=Q'K-DD\=Y(ERZW<MQ%=2,
MWX#?M>_MY_\ !,7XLWNE> /%WQ:^ GC+PUK$">.?@[XSM]>TW0=;-K<"ZN-!
M\<_##Q:D>ES0WT#2H-3ETFVU:SM[J2_\/ZE#YZW$P!_KY @@$$$$9!'((/0@
M]P:*_+__ ()1_P#!33X>?\%/?V<(/BUX?TVS\&?$CPE?P>%?C-\,([V>^?P7
MXME@DN=/N=-OKF*";4_"OBS3H)-8\-W[Q"=8TOM'O<ZGHM^3^H% !5:2>W?S
MK;SH6F$ =X/-0RK%/YT<3M&&\P1RM#.D;X =H950EHVQ.WW6[?*>?PK^1K_@
MN=^V#^T+^QS^WU\#_'OP#\?W_A*_U#]FS1+?7=%EACU3PGXJM+7XG?$PVUGX
ME\-W@?3]62 S7@M)946^L?M-Q)IMW9RRR2M]+PCPQC.,,\HY#E]:C0QN(PN.
MQ&&EB&XTI5<%1C75*4OL>T3:4M7%Q3Y9*Z/D^-.*\)P9DE3/,?A,1B\%2Q6"
MPV*AADI5(4L;6GAY55%Z2]GHW%V4E)IM-J^9^UM_P;5:S?>(?$7B_P#8^^*^
MAV^D:A?7^IV?PI^*\>HV8T5+B=[A]&\._$+2;;47U&TMG,EGHEEXA\.6T]O9
MBUCU3Q9J$JM=3?ST_M&_L-?M;?L?ZA'%\=/@OXQ\#Z?>QW=O8^*X$MO$'@Z_
MCDC-O>VMMXR\,W&J>'/M5S:R_9;O3YK]+R*TO&@F5;+5'%W_ $2?L\?\'-D4
MSZ;HW[3_ .S\]O&QM;>_\<?!C79;J59F:1)[IOA_XL:&7R0V'F2U\:O]CY2*
MU=#&J_TA_!KXV?L\?MS_  );QC\/M3\/?%;X2>/-/U7PSKVCZMIBS)EX3::Y
MX3\8^&]7B^U:;J,4%PHNM*U6TAE>VN+34(5ELKRRG?\ <X\>^*_AJ\%0XRR:
MGFV1X64,+A\Q<,&ZE2G&W^S87.Z,<7A(UY)<U*GFN#J.HH\T)1A&HG^"RX"\
M*?$EX[$\%9U6RC.ZG-F%7!\V*4*=9Z>UQ&35I87%2P]W:M4RO%P=-M1E"4I0
M:_RX/\_H#_(@_0@]Q17Z$_\ !4G]D33?V*/VR/B%\'?"TES)\/;VRT;Q]\-#
M>2&:[MO!GBR*>2#2KBZ?$MX= UJRUKP_!<S9GGM-*MI+AI;EIIY?SVK^E\IS
M3"9UEF7YM@92E@\RP5#&X>4TE-TZW-;FBMFG%KU35W8_F7-<LQ639EC\JQT5
M#&9=C*V#Q$8N\54H\M[.[O?F3WV:[A1117HGGGV+_P $\O\ D_']C?\ [.9^
M"G_JPM K_4 C_P!7'_N+_P"@BO\ +_\ ^">7_)^/[&__ &<S\%/_ %86@5_J
M 1_ZN/\ W%_]!%?R3]([_D?\+?\ 8BS'_P!74#^O/HU_\B3BO_L<Y;_ZIV/K
M_-;_ .#IKX7^-O!G_!3S4/B)KFDS6_@[XP_![X::IX)UP&:2QU&/P=I+>#/$
M.FB0Q100ZGI.M:8L]]:^;/(EEK>A3D%;V$6G^E)7P_\ MU?\$_/V:/\ @H?\
M*5^%'[1_A>ZU>RTN[N=5\$^+?#M\FB>._AWXAN[5]/DUSPAKR07'V:66-@-0
MTS4;/4M%UG[/;Q:OIM[':VZ1?SJ?TE./.K-M>GH?R"?\$+_^"_'[-G['?[.?
MA']CC]J?PKKO@'P]X%U[QCJW@WXW^#=!N_%^D:K9^.?$^N^,;^P^(_AW1TF\
M6V6K:9JFL7=CI>O^'=+\36E[H0T;3[VQT>32GN=5_L7^%7[2?[&7[=G@74[+
MX7?%OX)_M$>"=<A73?$?A:SU/P[XJ26*2":Y&E^*/ 6NBYU'3WEM8;BY%CK^
M@6TLD4,\@1HX&9?XG?VI_P#@TZ_:S\ W]_JW[*/Q4\ _'[PNSW$]CX7\:.OP
MG^(\,&_?#;":Z;4_A]K$JHRK+>/XC\*K)*^Z/2+:)2B_SJ_%[X"?M7_L)_%O
M2M(^+OP^^)W[.GQA\.75OKWA34M034=!OX+K2[E6@UWP/XRTB?\ L?7;>RN'
M9&U7PGK.J63RRI&UW;R@H0:5DEV27W'^PG\.?AMX ^#_ ,/_  Y\,_A;X5T/
MP/\ #_P9I,.B^%?"?AJQ@T[1-"TNWR8K*PL[95CBB#N\KD[I)99))97=W9C_
M ) 7[=__ "?'^V3T_P"3K/VA?O$A?^2N>+_O$<@>I'.,U_?K_P &]_\ P5Q\
M;?\ !0CX4>.?@Q\?Y["__:*^!&GZ-J%QXMLK>.Q?XG_#;5IIM,L?%6IZ9:0I
M:6GB;P_JUO'HOB6[M4@LM6.H:-J?DP7]UJ&_^ G]O 9_;A_;*'K^U7^T,/S^
M+GB^@SK? O\ $OU/]#'_ (-Q_P!C#X;?L^_\$Z_A+\8K;P_I,_QA_:4TZ^^)
MWCGQU]D277+KPYJFKWB>!?"D&IW-NEW;Z#IGAFTTS4KK1K0II8\4ZGKE]&+N
M22*^D_3[]NC]C?X/_ML_LY?$OX)?%KPSHVL6VM^#O$,7@[Q'J.D6-YK/PX\:
M2Z7=1Z!X[\(ZJ]E-JFAZYHNI?9+V6XTRXB&HV5M-I&K17VB:EJFG7WC?_!&H
M;?\ @EC^PB.O_&.7@#]=/)_K7Z.:Y_R!=8_[!>H?^DDU!</@CZ?YG^)E:P3W
M-U!:VT;SW,]Q';V\,*EI9;B24110Q*'0R.\A58G21%E+#8RXW5_L(?L(?L:_
M"3]B/]F7X9? 7X4^'[#1[+PYX8T1O%VNVUE:P:SX^\=3:19CQ3XX\3WRP_:=
M0UC6]0$P4SR,NEZ7'8Z!IRVVB:7IMC:_Y!?@W_D</"O_ &,>@_\ ITMJ_P!K
M/2/^0;9_]>\'_HF.@H_!;_@XT_9!^'?[0G_!.#XN_$W4O#^D/\5OV;-*M_BE
M\./&=S;PPZOI&F:?KFC1_$'PX-7CM)KS^Q/$7@J363+HI>.QO=?L="OYI(I[
M(3'^"3_@D;K6JZ!_P4__ &"[[1[V6PNY_P!J#X3:+-<0!/,?2_$?BBQ\/:Y9
M;G5BL6I:-J=_I]R4VNUM=2QAP';/^D]_P6;_ .467[<__9O/CO\ ](5K_--_
MX)2?\I-/V!O^SM/@7_ZL'0J".1<ZG=W732VUO4_LE_X.NOV,(_BC^RK\/?VP
M_#%A+-XL_9H\1?\ "->.6@:!!<?"/XF7]CIBZE=AD:XN#X3^(2>&%LX+?:D5
MAXN\0W-P4BA6:W_&K_@UP_;OTG]G;]J[Q7^RIX\U*YM/!W[6<&BZ?X%:6<-I
M>D_&KPG#J5SX?M9@41+9?&WA^\U+PZ;Q2)KG7[+PU93PLS[U_OV_:$^#OAG]
MH7X(?%KX$^,S(/"OQA^&WCGX::\\,4<MS;:;XU\-:EX>N-0LO-1Q%J6FK?\
MV_3+A0);>_M[>6-E= P_R"/$.B?%?]AW]K#5M%O3'HWQ@_94^.;I'<&&\M;%
M?&7PI\92?8M1ACDV23:%?ZAH\%QITXD=-7T:_@NX(S#.%H!P7-SWUT[6T5C_
M %T?VL/C]X;_ &7/V:?C/^T7XQ*?V%\'_AQXG\=75D9X[:75KW2-&NI=&\.V
M4LT4\8U+Q'KCZ=H&EJT<@?4=1M4V2EO*?_(V^%/PU^+W[<W[5?ACP#I":EXS
M^+W[1_Q=FGU751;7%[=W6N^,]>N==\7^,=3:%_,2RT>*XU;Q9K=[),L-IIUE
M?W=Q<10_:)Z_L^_X.(O^"C_A7XA?\$IOV7/#?PZDM)(O^"@,/@7XCWMO!<#4
M(M(^''PWMO"7Q#\2:+>LT5M<VVJ:?\3=0\#Z*AECM+J67P]XEMEBM[JRG^S_
M !K_ ,&D?[(U[XK^-?QU_;+UZV;_ (1KX5>$U^"W@*XGCA9KSX@^.18Z]XOO
M[9F4SQ7'AGP5;Z383N D;-XYD2V<B.Y6@3F^=1233ZZ^?R/[B?@C\(_"'P*^
M#_PM^#/@2VDM?!GPI^'_ (2^'GABWF\IY?[#\(Z'9Z'ITMRXB027ES!9I=7L
MZ+&;F[EEG<$N17^:-_P<H$_\/@/VC@, #P]\#8P  /E_X4CX);DCEN0H522B
M;<QJC/*TG^H:BA%"CH/\<\9)P!T R<# [5_EX_\ !RA_RF!_:/\ ^P#\#?\
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
M7P__ /3<1_.OT;US_D"ZQ_V"]0_]))J^=_V,/V=F_9)_96^!'[-#^+4\>/\
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
M'M<M/]?O3;0V>GVEBS>8;:U@MVDV[0YBB6)F"%F(!*D@$]#^-?E3_P %(/\
M@C7^R1_P4SAT+7/C!;>)O WQ9\)Z7?:1X;^,'PSET73/%7]G70,EOI'BBTUG
M2-9TGQ9HNG7>V[TV"]MK?5]%EEOF\-ZYH,NH7,S 3ASV=[6OTON?G7^SI_P=
M6?\ !/;XB^$;"?X^:9\4/V=_B!%8VXUS1I_!VK_$GPG<:BL$!NCX7\2>![74
M=7OM.>65Y+637_"_AR<08W+*NRXF^.?V\/\ @[$^'5IX7U'P9^P!\.?$'B/Q
MM>R7%@GQA^,F@+H?A+1(9%DAAU7PIX%MM8F\0^(M1=B+FQ7Q6GANPMC'']KT
MW5(Y9;>/YC\8_P#!H%\?;;7M0A^'/[8?PCU[PN)A)IEYXU\!^-O"VNF"3):.
MZTW1[OQEIZ/;D"+S;75_L]T5-REEI9F:QA^A/V;?^#0SPUI^KC5?VMOVJ]1\
M2Z+%*5'@?X#>&(_#4M]"LD4D;WWQ!\:G6YX([E%FMKFPTSP1;75NI\VU\1*[
M (&A^EO_  ;^?\%5_C?_ ,%$?@_XT\,?'OX;Z]<_$'X+#2-)U+]H/1= ATWX
M:?$V.X@A%K8ZL]H+?3M+^+,,+MJFM:)X?M#I&I:5+%KL%CX<DNQI<O\ 16.G
M/![CKBO&?@!^S_\ ";]F#X3^#/@C\#_!^F> _AIX#T>#1_#WAW2XBJI''E[C
M4-1NY&>ZU76M3NGGO]8UF_EGU+5;^YGN[ZYGE=2GLU #7^X_&?E;@ $G@\ '
M@Y]#Q7\B'_!P/^Q]^U!^T1^U'\'_ !3\#?@5\2?BGX?T7X"V6A:IK7@OPU=Z
MUI]IK</C_P <ZB^F75S:!HXK\6-_;7!@/S"*6!FP)E-?UXT5]-PAQ/B^#L^H
M9_@<-A\5B:&%QN%C2Q53%0HN.-I0I2DUAJU)N4%'F5[WORMJ.C^3XSX2PO&N
M25,CQN+KX3#U<3@\3*KAJ6&J5>;"5I58Q3Q%.HHJ?-RMJUK<R3;9_F2_\.O/
M^"AW_1F_QZ_\(#5/_B:/^'7G_!0[_HS?X]?^$!JG_P 37^FU17Z[_P 3%<4?
M]"+(/_ LU_\ FT_(/^);^&/^B@S_ /\  ,K_ /F,_P R7_AUY_P4._Z,W^/7
M_A :I_\ $T?\.O/^"AW_ $9O\>O_  @-4_\ B:_TVJ*/^)BN*/\ H19!_P"!
M9K_\VA_Q+?PQ_P!%!G__ (!E?_S&?YDO_#KS_@H=_P!&;_'K_P (#5/_ (FC
M_AUY_P %#O\ HS?X]?\ A :I_P#$U_IM44?\3%<4?]"+(/\ P+-?_FT/^);^
M&/\ HH,__P# ,K_^8S_/*_8@_P""=/[='@+]LC]E?QOXT_93^-/AOPCX4_:
M^$OB#Q+X@U?P5J-EI>C:'H_CC1;[5=2U"[E C@L["RMYKFYD8@1PQ.V>#7^A
MC"<PQ'(;,:'<#D-E0<@X&0>H.!]!4E%?F?'7'6/X\QV QV/P."P$\OPF(P=*
ME@9XN5*5/$8N.+DW'%5JO+)5%+X+<W,V^S_3N O#_+O#_!YC@\NQN,QT<RQ.
M'Q5:KC886-55,/AI89)2PU&ES*4))VG?EY4DM6PHHHKX@^]"BBB@ HHHH **
M** "BBB@ HHHH _@"_X.!?V=O^"D'[=?[=VJ2_"O]CS]H?Q?\!_@3X6LOAG\
M,-<T;X=:K<:)XEO)Y%UOQWXTL)XX?,O(=<\27#Z39:@P\F^T;PSI4\"1!F4_
MCU\.?^"&'_!5OXFZQ%I.E?L9?%#PTAN[:TN-7^)!\.?#;1[);R29([V:Y\9Z
M[H\]S90&%?MK:5:ZC=6IE16M'9D#_P"L%109^S]_GOVTMY6W/Q*_X(J?\$B_
M#?\ P2\^#WB"X\3ZUI'CC]I/XOPZ3/\ %OQEHOVF3PYH^G:/)=W&A> ? QOH
M+6[70=*DU"XO-:UF:TL;[Q;K<J7E];16&D>'[+3_ -M:**#0**** "BBB@ H
5HHH **** "BBB@ HHHH **** /_9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>7
<FILENAME>ex23-1_002.jpg
<TEXT>
begin 644 ex23-1_002.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  $! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_
MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P  1" "E _X# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#^_BBBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BOS*^(7Q#\?V'_
M  5Q_9=^%EEXU\36GPV\2?L)_MA^-_$/@&VUG4X?"&N>+_"?QL_9$TCPMXFU
M70([U=+OM>\.Z1XI\2Z9I&JW-I)=V-EX@UFVM988=1NTG_30#  Y. !DG)X]
M3W/OWH 6BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH ***\T^,]_J.E?"#XIZII%]<Z;JFF_#GQO?Z=J%
MG/);7EC?6GAG4[BSN[2YA*S6]S;7,<4\%Q$ZR0R(LB'<H% 'I=%?-G[&_B'7
M?%W[)7[+OBKQ/K&I^(?$?B7]G+X':_X@U[6KVYU+5];US6OACX7U'5M7U74+
MN6:ZOM2U/4+BXO;^]N9I;BZNIY9YY))9'8_2= !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%?CI\
M)?BO\4-4_P""X/[8OP:U/XA>,;[X2^$?V$?V7?&WACX:77B/5[GP/X?\7^)_
MB3\3M-U_Q1I'AF:[;1M/U_6;'2+*SU35;.QM[R_M;6UANI94@C50#]BZ***
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@#\FOB;_ ,IK_P!D
M/_M'5^W%_P"K\_8FK]9:_)KXF_\ *:_]D/\ [1U?MQ?^K\_8FK]9: ,'Q/\
MVP=!U9/#]Y9:?KLFGWL6C7NI6SWNGVNJRVDZ:=<7UE%=V$UY9PWK02W-K#?6
M4MS$CPQW=JSB>/\ $?\ X)__ /!3[XD_&+X&_ME^)?VJ=,\*>%OBO^QMK?BN
M[\=Z/X2TK4/#.F1>&-"\-:M<16DEAXAU?5)!JT7B/P=XPTJ[D?5443+I\<MK
M8.0\O[G7,:2HBR)YB[\XYX(1^>,<'[I!X(8@@YP?Y&/^"K?[/'Q\\!_MD?$/
M2_V;O _C74/!G_!1;X8^ OAO\3-1\(^'M?U/1O#/C'3OBEX.77-=UV?3K*?0
M-.34_#>F:?%=7.K:GI+30>*O%-Q>SVMF7GE_2/#G*,EXEK9QPWFGU#"XS&0R
MW-\KS7&5*=!X2CDN,I5L]P2JU,7AZ?)F>3_6:=*$ES?7*=/D^)37Y-XH9OQ!
MPU#*.)<EGC\1A,'/,LJS;*L*IU8XNIG66SPN18Q4886O-3RW.)TL17J1:@L*
MI7_>6B_V&_9,_;5^+GB/_@G=KG[;_P"U+:^%-&F'AOXD_%/1M \'Z;>Z%90_
M#7PS]KM_"5C<-J&K:Y)?ZUXI?1;F_L+^SF47D7B#1[>VLF*(;CY=_P""8O\
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
M)IFE:A/IT&IP7,N\^'<IGC<HR_/,EX<ROB[-N'./Z4<KRG&8"EE=3&4\)3?
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
MT_P]K327/B/^S_M5Y9PP^'[FPM)YCJMDK?D]^T;X ^(?@7_@HA^V9\2_%O\
MP2I\?_MV^ ?B7K7@!O .KS>'_&-EX5\.MX?\#Z1:ZKJ6A:UI?PT\>Z;JXURX
M:"PN_(\AK.32</-O)@A_8/\ ;Y\'>+OVA/\ @DUXMTOP_P# W7[+XB^+O@O\
M)_$NA? G3M$U+Q/XP\#^*9-2\$:S-X.M--.CVFLSZ]X)@>^TR>0Z)I]_;IIM
MXTUE9[9X$688/AW!YUX;4YY?DE;(<[P/#V19PJ=/AA4Z>(S?AK+\OS;,9X_+
M<P><+,,)F'MLR6)XAH8%X/&4W'#N5.MB&WE^/X@Q^6>)OL\WSRGGV38_.\\R
MB,I\5TJOU;(>+\XQ.!P$,%G&4X7*/J&-P-*.!>'R.KC%B<'*F\5RSITH+H/^
M"?O[2_Q^_:]^*7[3WQ@U#Q!:P?LD^&_B+?\ PI_9R\/P>&-/T[5?%,GA6XBM
MO%OQ!U+7IK,:Q?:=/+:VR:';"XBM?M6M:]:740.AV.W]9Z^(?^"=/PYN_A/^
MP_\ LO\ @75?"-WX"U_1O@]X._X2GPGJ.E3Z)JNF>+=0TR+4_%(UG3+J*&[M
M=9N=?O-0NM42ZB2?[=/.95#,17V]7Y%Q;5P-7B3-XY7@Z&!RS!XJ669?1P\H
M3C4PN5)9?#&U*M.4HUZ^93PM;,L164I<U7'2A!^QI4$OVW@RCCJ?#655<SQM
M?'9CCL-',\=6Q$90G3Q&9_[>\'&G/WJ5'+Z6)HY?1IN,/W6#C4G%5:M5LHHH
MKYT^H"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ K\-?@O_RL&?MS_P#:
M.G]C_P#]6Q\8J_<JOPU^"_\ RL&?MS_]HZ?V/_\ U;'QBH _<JJEZ[QPEH\[
MP<K@[02%9@&.#\K%0&X;@YQQD6ZJW@!@8''.< D#)VL2.H[ YP<XR>F:$FVD
MK:RBK-737-&Z:;CO'F7Q+5I[I)YU6U2JM2<)*E5<9QT<9>SJ<LE[L_AEROX)
M;;,_FK_X)W_\%8_CQ\0OVCM;^$W[6.HZ3<> ?BO\1?B#\-_V>OB'IOAS2?#.
MG6OQ$^&>K0R:I\.=;GTN&"":_P!=T'Q%X??3)[Y_M;W[:/96D=W-KDAC^EO^
M"4/[:_[0'[5?Q5_;M\-_&CQ3INLZ-\"?B?H/A?X?VVF>'M*T(Z7H>I>)/BKI
M\BWLVFV\<FI7,EOX5TB+SKMB85@D;+//)(_R/^RI_P $\O'/QJ_8)_:@^$/Q
M.\%>./@[\6T_:_\ B9\9/@!XEU_P]?\ A;Q1H/BO3]-\+7/@3QOX>N=432KS
M^Q-5O;*73+K4M.O;82V,EQ+:72W5I:LG@G_!-+P)^VS^S+^SW_P5*^(/C/\
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
M*2!9+KW_  C/@OQ3I]\OVBW@U>\TO4]2\+:SI=_<ZIIES<2Z=+INKV7ZK?\
M!)7]BWQE^R5\ O$.L?&"\2]^._Q]\77?Q;^*H2"UDN= U76;:.2T\*W.M(DE
M]K-YI!FOKO5+B>]FL5\1:OKDNF6\,5Q-<7GSW'>!R#"Y#G]2E0X7I8.>/R5>
M&N+R'$8"OFV.P-?"X>MC9YR\/B:N)G">$FXU)9OA\+7H9JIPA"5/GE'WN!L?
MQ)BN(L@C/'<3U,92P6<OQ)P6=4\P63X7&4L5BH82.3+,*2A0<,5&G.,,KK5Z
M5;+I0;GS*$'^M%%%%?AY_0H4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110!^37Q-_P"4U_[(?_:.K]N+_P!7Y^Q-
M7ZRU^37Q-_Y37_LA_P#:.K]N+_U?G[$U?K+0 C*&QD9P<CDCG!'8C/7H>._4
M"H6MH6(8JV5R01+*.N[J X!QN;;G.W)VXS4]%)I/=)[?@[KJGH]=[7Z,.J?5
M)I;.RENM4]^NFI6^QV^YFV,"Q!)$LHY'3 #@+P2IV@94E3E3BGFWA.W*?=
M^9QTQC.&&<8!&<X*J>H!$U%.V_GOOKJWW[MO2VK?<;;=TW=/>]G?11UTU]V,
M5K?1)*R2M66SMD^['@\?-OD+_*20-Y<O@%CQNP<G(YH%G;@@A&R!@'S9>,?5
M_KSUY/J<V:*E1BE%**2C%0BDOA@N6T%KI%<L;1O;W5IH*ROS65VY2O97YI-2
ME+;XI.,7*7Q-I-O0@:VA<AF3)!!!W..5Z=&'H,_W@ #D 4BVENF=L>W)R0&<
M!CZL-V&[ [@<@*#PJ@6**=E;ELN6Z?*[N-TVT[-M73E)K3J]-6A<L;\RC%2M
M)<RC%2M*SDN914K2LK^]K97V17%I;@[A$ V<[LMGG;GG=G!VJ2.A*J2"0,+)
M;02XWH3@Y!#NI!RK<%&4X+*I(S@E1D<"IZ*7+%W]V/O<O-9)7Y?ANXJ+?+]F
M[=ME9:#>KYGJ^[U>FWQ<RZ]OQU*PM+=2Q$9!;;NP\F#M(*@+OV@ @8  P!CI
MQ2FU@8@E6.-QQYDN#OSNW+OVMD': P("@(,* !8HH4(I644DY*;M?62=U)^]
M=M/JV_1K0=]+=+)6LK66RMRVTZ6BK=&GJH&MH6QN3.!@?,XP,*,\,.<(N&^\
M,'GDYC-C:D!?+(4-N""658P>1@1K($"X.-H7;CC&.*MT53U33UB^6\7K%\KO
M'W7>/NM)KW59I-/16GEC=.RNMG;^XZ6O1_NVZ?O*:4&XI)-IUS:6[*$,>% (
M 5Y%V@C'RE6!4@< J01@8(VC#TAC3[JXX"D[F)(!SR222<DL22269F))9B9:
M*/YO[SO+^\^[UU?=M7?5L$DK625MK)*VB6EDK:)*RLDE9)!THHHH&%%%% !1
M110 4444 %%%% !1110 5Y7\=/\ DB?Q@_[)?X^_]175:]4KROXZ?\D3^,'_
M &2_Q]_ZBNJT >3_ +"O_)E7[(7_ &:W^SW_ .JD\(U]65\I_L*_\F5?LA?]
MFM_L]_\ JI/"-?5E $;11N,,"1G<5+-M)Y^\N<,.>C C@<?*,1&TMR<E">H
M\R3: P8$*N_:H(9AA0.IJS14\L>;FY8N5E'F<(.5D^9+F<'*RE[R7-H]59ZB
MLKIVU4E):O227*GI)*_+I>VVC3(/LT/ V' .0-\F,XQR-V#CJ,@@$!AA@"&"
MRM00PBP5"A</(-H1610H#@*%5FQMQ@L6'S$FK5%.R3<DES.7,WU<E'DYF][\
MGNWT]WW=M&**2LDDK-62LK.?M&K=G/WWO[WO;E<VEN23Y>"Q4DAY%)*XVDD,
M#P  .?N_+]W(I3;0D %-V"#\S.W(Y&<L<X(R <@'D8/-3T4.,7>\4^9WE=)I
MM7U:DI)OWI=%\3WNPLM/[JY8O9I62LFFG:T8JUWI%+2R*DEA:2_?BSSR1)(I
M;C&&*N"RXXVL2OM3C9VVTH(@JL,$*SIS@#<"K AP  '!#C PPP*LT4E""VIT
MUOM3I+=IO:DMW&+>]VDW=I67)'73XK7]Z>O+%Q5U[5K2,I15DK)M>:I#3K,(
M8UA"H=V%1Y$V;N7\HJX,1D/,AB*&0D[]V3EWV&TV>7Y"E,@[26()4EAG+9()
M9BPSAMSA@0[9MT53][25VM-&V]I<Z>^ZG[R>C4M4[C:3=VKOWG>5Y/WE)2UD
MY/WE*2DKV?,[IW(8[>&+[B8_X$Y[8Q\S' Z\=,DG&229J**22BE&*22O9+1*
M[;?WMMOS;?4=E=OJ[7?>R25]MDDEV22V04444P"BBB@ HHHH **** "BBB@
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
M$&H2>']=U/P[K"/I7B33M'UW37LM4TB]A>+5=,LYI81!?0))IUU9WEW\<?\
M!7KXC>,?#O['?B/X,_"G1]1\3?&[]L37M/\ V2/A'X9T/5/#VD>(-1U+XN6.
MIQ_$75=#U#Q3K_AG0++4O!7P0T?XH^.K"\U;6;'3+;4O#=@VIW$&GM=31_DY
M\*?A%\6?AK\5/V\?V,/"'@7XU?L23?MX?"+4OVI_V)8=8^)WPV&N>#?VFO@7
MX;\&^"OB1H'AWQ7\#/B]XYTZX\+:M>1_ [QY>^"-2U7P]<>(?#)^*NEW&A3>
M%H1<, ?U1+<0L6 D&5;8PY!5MI8!@0"H('!. 3\H);BG)+&YPC G!('() ."
M1D#(&0>.S(W1U)_E;^+/[?W[0OQX^ 'QZ_;5_9VU?QAX \-_#CX&?LG?LG+X
M8NM7D\*Z3\-_VDOVG?B5\)_$'[8GCW79KVQUOPSI/BC]D?X<^,/AWX7T3QOK
M&@ZQX<\$>,H?BB+^VO=#T76+#5?O+_@F/\'_ -I/X)?&[XM>&?&?C[Q3K/P,
MUWX5^"_$UAX!^,7[<NM?MR_%KPO\3)+ZVLK/Q=X<\8>(O!?@[Q#X.^&?Q!\&
M17$]]H.J'6='O_%6APZSX.FTNUO=;L" ?MM1110 4444 %%%% !1110 4444
M %%%% !7X:_!?_E8,_;G_P"T=/['_P#ZMCXQ5^Y5?AK\%_\ E8,_;G_[1T_L
M?_\ JV/C%0!^Y5-9E7&XXR<#W."V![X!/OCCFG53OYH8+9YKB18H(P\DTCD"
M-(XHY)',K$$+'M0[R058?(RLKE2 ?('PL_;X_9B^,7Q4M?@YX,\:^+$\<:WI
M'B7Q!X*MO&GP5^.'PN\/_$[0?!]U86WBC6_A#XZ^)WPZ\(>!_C)I&AC4].N[
M[5/A7XB\7Z?#I-_::R]S_9=U!=MF?#C_ (*'_LF_%7XHZ5\*?!?Q,U?4-:\4
MZUXO\.^ /$NH_"3XR^&/A#\5/$/@2758O%GA_P"#?Q^\4^ -'^!WQEU[1!H'
MB"YN='^&'Q \4W\MEX<\4W]E#>6/AC7KC3O@O3?B'>_\% _'GAG]ICX=>,-%
M\&_!?X2_#3X_S_L=^$=-\8>$#\8?VDOB1\3OA9XF^'L'QNU/2K'6+E_A_P#"
M_3/"EQK*?![PE+-9^-_%]QX@/Q%\<1^%--T71-!O_GCPMXB\*>*/V"/^" G@
MOX%>*K&7Q2/C7^PHGAW0-9O-(\0^-;'PM\'/A'K\G[2MMK5E9VFKM9:YX(^'
MVC^.O"7CC6&MXUT+6[IM.U6^T>]N[<N ?MWX#_;)_9B^*/Q_\;_LP_#;XW>
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
M:FZGDM;9/$OQW:X@M$N9=+D\;@']6GVB'_GJG1FX.<JGWF&.JCGD9&01G(.
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
M>)/%NG:5JT<_C/4I-'\'P:G%=3);:%/XHU6&;3O#T.M7EDVMW:)'IIN#/%N
M/H[4O#6@ZQJ&B:MJND:;J.I>&KZ?5?#E_?6%G=WGA_5;G2=4T"YU31+JY@EN
M-)U&XT+6]8T6>]L);>XETK5=1T^21K6]N8I8K;PIX;LM8U;Q#9Z)I5IX@U^W
MTJSUW7K?3K&+6=;L]#^V#1;/5]36W%YJ5II U'4%TNVO)IH=.2^O([)(([J=
M9/,KC]HKX,6*_&U]0^)?@NS7]FVPBU3X]&76H57X3Z?<>"(/B5;7GC:1@JZ%
M;2> +RT\6B2_\G.A3IJ15+=@1+;_ +0WP9NX/B?/:_$KP7.OP7T;3_$/Q5":
M_8"3P!H6J^#$^(FE:SXKA:82:+I>J>")!XGL-1O EE<:.DUW#<2K;S*H!C:%
M^R?^S)X9^,&N_M!>'_@#\'='^.?B>=[KQ#\7]-^&_@^R^).L7<MI'87%Y?\
MC2VT:+Q#<7EW8Q)9W]W)J!N-0ME6*^EN%2/;[1KGAS0?$UO;6?B+1],URSL]
M5T/7;2SU?3[/4K2WUSPQK6G^)/#6LPV][!/%'JOA[Q%I.EZ]H=^B"YTK6=-L
M-4L9(+VSMYX_F/5?V[/V0O#_ (I^'O@?Q'^T7\(M \8?%71_!&O^ /#>L^,]
M*TC5O$6D?$QC%\.;R&SU*>UEL%\>W*R6?@M-6%A+XLNXFMO#\>HW>ZU3J[;]
MK']GBX^-US^S8/C'\/6^/EG?QZ;=_".+Q#:2^.[:[E\"Q_$N".X\/I(;^W6X
M\!3V_BN*:6$6S:5/&8YYIV\L 'M6I^$O"VLZYH'B?5?#FAZCXE\*)JT?A;Q%
M?:1I]WKOAI->MHK+7%\/ZO<6TNH:*NLV<$%IJPTVXMAJ5K#%;7HG@C6,>*:#
M^R%^RWX5^+>J?'OPO^SS\%O#GQMUK[:VJ_%G0OA?X'TGXB7]QJ7G#4KVY\86
M&A0:_-?ZG'<2Q:G>O?M<:C$WEWTEPH7&?^V7\>M=_9A_9?\ C;\?/#/A/3/'
M/B#X6>!-3\5Z-X0UG6KKPYI7B/4K5X8+/2M0UZRTK6[K1K.XN+B(3ZC!H^J2
M6\88K92DC'QA\-?^"AOQB\"_%3XJ_!S]OKX&_##]G[5OAI^R_P"+_P!L.?XG
M_!GXTZ[\;?@_:_!CP%XI@\(>*X/&FI^)OA7\)?%'A#QI;7\_]J>'M+C\/:YI
MOC#1;#Q')I>J0:AX;GL+X _2#5/@S\)M<C\>0ZU\-? >L1?%.WTZS^)T6J>#
M_#=_%\1;31[$Z9I%IXZCN],E3Q9:Z3IQ^PZ9;Z\M_#I]F%M;1(;=$B7!^,G[
M.7P%_:(\*6W@7X\_![X:_&3P98WUCJEAX7^)?@GPWXST/3M3TW(L-2TW3M?T
MR^M].O[5"T4%Y9);W$<3O&DBJ[@_*/P+_:&_;F^-LOPR^)EQ^R?\(_A7^S[\
M1[W3]3_LOXB?M >(U_:;\,_#?6="N=0T?Q=XB^''A?X,^(?AG9>)[N[%A/<?
M#J'XO7D^FZ9>20ZAXGMM6M)[,>N?&O\ :9U;X,?'_P#91^&&J^"[*Y^'/[3/
MB/XH_#1_B5+KDMK=>#_B[X8\!S_$CX<>%)?#S:>T6I:7\1O#GA#XH6T6LQZK
M#-8Z]H&@Z;!IU]%K;7EN ?1.E_#WP/H?@ZS^'FB>$_#>B^ =/T,>%[+P3H^@
MZ/I?A&U\,_8WT\^'+;PU8V,&BVV@M8NUF=(MK&'3_LF;06XMF>)O%/@S^Q9^
MR1^SIXC\4>,?@'^S9\#O@QXM\;/<R>+?$WPP^%G@?P-KGB#[7<B\NH=2U+PU
MH6FW4UG/>+'>2:<)$TYKN*.Y-IYX:1OESXP_\%'[?X5?$7]J'PY:?"ZX\:^%
M?V=+;]FKX8:1?:-XBMK/Q+\7?VQOVJ/%<>B?#']FOP=8:C:Q:%!<#2O%?PBU
M3Q/XKO\ 7E'AF+XFV-[?Z*^F:/J=U'T5Q^V5\4?@O\!?B1^T+^U9X+^!MIX4
MT./P-I_PRT3]EGXP>)_CGX@^)/Q!\;>)Y_!&E_"33Y?%_P ,OA)H\GCC7O'&
MJ^"/!G@]M/U"[TC5]:U[49=;NO#&FZ-+=R 'V-\-/@3\&O@U?>-M2^$_PN\
M_#>]^)/B2Y\8^/KCP/X0\/>%9/&/BN\5$NO$7B1]"TZP?6=8G5,RW^H-<7#R
M27,[2&XN[J6;UBOBKX*?$;]NOQ)XOT6?X\?LY_L__"[X8Z[H6N:E=MX*_:*\
M9?$;XH^!=5BFT^?PQH7B+P_=_ CPAX(\0SZC83WUKK]WX3\>7=GH>M6B16$N
MOV,\=TW3_M#_ !"_:L\*'2A^S9\%?@[\3((- \3>(/%NJ?&+XWZO\(-/MKC2
M!:'0?!_AU/#WPR^)MY=ZYXE$UU+<:[XBA\.>$?#-K:PSW^J7LE^EM;@'U=17
MX[ZQ_P %$?VD?BAHW["^H?L>_LU?"GX@:Q^U]^R-XW_;%UOPW\=_CUKGP@'P
M_P# GA ?LRQMX7TSQ!X3^$OQ4M/$OBN:]_:1TVQ9[S3] TAO[ O;U;V.#SD@
M]T^'W[6?[0'[3'[*/P&_:-_9:^!?PZ36_C!H+>*-<\#_ +1?Q5\7?#FS\&:9
M:6>IV=W;6.O>!_A'\1[KQ<][XML8[+P[K]KH>F>&-?\ !]Q:^.].U.YL-0M;
M"@#]%**^<OV1OC^W[4O[-OPC^/\ +X/G\ 77Q+\,?VQ?^#IM:L_$L6@ZI9ZE
M?Z+JMIIGB?3X+6P\4:"VI:9=7'ASQ196MK:>(] FTW6[>UMHK](4^C: "BBB
M@ HHHH **** "O*_CI_R1/XP?]DO\??^HKJM>J5Y7\=/^2)_&#_LE_C[_P!1
M75: /)_V%?\ DRK]D+_LUO\ 9[_]5)X1KZLKY3_85_Y,J_9"_P"S6_V>_P#U
M4GA&OJR@#S'XK_!?X3?'7P9JGPY^-'PY\%_%7P%K<MO/JW@WX@^&=%\7>&K^
M>SE\^PN+K1M>L;ZPFGT^X"W-A,\#26=S''<6[1S('K"\1_LW_ +Q?\)(_@'X
MH^#7PQU[X'0Z7I^B6_P@U3P-X8O/AM::/I,L4^E:;9>#)M+;0+.TTNY@ANM,
MBM;&(:;=Q175C]GN(HY$P/C'\<KSX6_%#]E3X>6WAZVUF+]H_P"-?B_X37NI
MS7\MI+X5MO"_[-?QX^/BZU:6J6TRZM<7=U\&K?PTUA+-8QQ6VOSZJ+IWTU+*
M\F^._P"U7^SM^S'8Z'J'Q^^,?@'X2V_B;^U3X?/C37(=+EUB'08[*;7[S3[0
MA[NZT[08=2T^76M2C@^P:6E]9MJ%Q:+<Q,P!H:O^S%^SMK_PA@_9^UOX'_"C
M5/@5:Z?::5:?!R]^'WA*;X96>GV%V+^PM;'P2=('AVQCL+]1J%A]CT^ V6H
M:A:&&^ N*]0\)^#O"G@/P[H?@_P1X<T/P?X2\,Z=;:/X<\+>&-)T_0?#F@Z3
M91F&RTO1M$TJVM--TK3K.(F*ULK"VM[:"/\ =QQJ@"CYQ^)W[<?[)_P8L-+U
M7XI_M!_"'P3IVN>#M$\>Z!-K?C;2;<^)?"'B3^U6T/Q+X:5)97U_1-0AT'6;
M^+4-'COK8Z/IFHZXTJ:3IUW=)TOQ(_:X_9K^$7P\\%_%;XD?&[X:^$OA]\2%
MTYOAYXLU/Q5ILFD>/!JNAW/BC3QX+ELI[J3Q8+OPQ97GB""30$OXGT:UN-49
MTT^&2Y4 ]XUS1=%\3:-J_AOQ%IFFZ[H.O:9?:-KFAZO96NIZ5K&CZG;2V6I:
M7JFFWL4]GJ&FZA9S36E]8WD$UK=VLTL$\4D4CH?)?BI^S5\ /CEX'T7X9_&3
MX-?#'XI?#WPYJ&C:KX>\$^/_  )X5\7^%M#U'P_9W>G:->:1H6OZ1J&F:;<:
M=I=_>Z3:26=M"UOI=[>Z?"8[6]O(I_GP?MM_#[QUX[_9,B^ 7C+X<_&3X9?M
M!_%[XN?##7O'G@[Q#'XET?2;CX7_  +^*'Q*NX_#VM:%?2:1?ZG#XA\"6&CZ
MBDZ7L*6%W>^1MO%A,?:Z;^WK^Q]K?C_Q1\+-&_:+^$NI_$3P9%XXN/$GA.R\
M8Z9=:I81?#*"\N?B/#&D$KQZAJ'@6#3=5D\6:9I;W^H: NE:E)J=K;165R\0
M!Z!\2?V5_P!FSXR>!?#'PP^+/P'^$7Q)^'/@JZTR\\&^!?&_PZ\(>)?"7A*X
MT:SDTW2W\->'=6T>ZTC0EL=*FGTB"/2[.UC&D7%QI3(UA/+;O/\ %/\ 9@_9
MV^./@#2?A7\9/@E\+/BA\-M DTF;0/ OCKP'X7\3>%/#\^@P&TT6;0=!U72K
MG3-$ETJQ/]G6$FEVMHUMIN;"(K:,T+:5A\?_ (/ZE8_!;4K3XB>$;BP_:*^Q
MM\#KRWUFWF@^*<>H>!]2^)=C+X*=#MUN*[^'^D:GXP@>V9E.@6<]^2$4(UKX
M^_$R?X+? GXU?&.VTB'Q!<_";X2_$?XF6^@W%Z^G0:W/X$\':SXIBTB?4([>
M\>PAU*32ELY+U+2Z>U29IUMYS&(F .*^(?['W[+/Q:^''ASX/?$[]GGX+^/?
MA3X/DM9?"'PX\5?##P/K/@CPG)90O;6K^%_"][H,NB^'##;R2V\8T6RL56VF
MFM5 MI7B;W#POX5\-^"?#^D>$_!^@Z-X7\+^']/MM)T'PYX=TK3]#T+1=+LT
M\NUTW2=(TJVM-/TZPMD^2WL[.WAMK=/D@BC0!1^4OP-_X*-?&&T^(>L?#?\
M;A^!?PN_9],?[*GBG]M#1?B=\)?C;KOQG^%]A\#O ^I>'=,\7/\ $N\\1?"C
MX5^(?A[XHTM/$,&MZ9;OH^NZ)XGT6RU_^QM7DU'PW>V5QZ%\&/VG/V]/C_H_
MPX^+_A']C[X._#GX#?$.X\%ZUI>D_&?]H_Q%I'[1DOPO\3:M"]WXXOOA]X(^
M"'C7X<^&M?B\'74?B72_AW??%C4]0F>)=+UW7O#NJ7<FGZ< ?6Y_93_9I/QJ
MB_:1;X"_"!OV@X-*ET2/XVGX;^#?^%J+IDT+VTEL/'0T4>(QNM7-F)1J F2Q
MWZ>DBV,UQ;S4]1_9!_98U?XPV'[0NJ?LZ_!+4/CQI<*PZ=\9;SX6>!;GXG69
M619%N+?QO-H+^(HKQ-B1Q7BZ@+F"%1%!+%&65N7^.O[35U\#/CS^R1\,];\'
MVUS\//VH?&?Q&^$TWQ,FUN:Q_P"$'^+NC> +KXD_"SPO/I)TFXL]2L_B=HG@
MWXG:/;W<^M:3=6GBG2?"NDZ=9ZS-XB>.S\S\8_MA?$&]_:;^*_[,_P  /A'H
M/QA\2_!7]G;0OBUX^O\ 5/'[>!-(T?XC_$WQ;)H7P8^%&H:T_AWQ%;:=+XC\
M.>&_B#\0/%.L+9ZC?>'O#&AZ+]@T#6K_ ,06ULH!]O:MX0\+:]K'AKQ%K/AW
M0]4\0>#+K4KWPAKNH:1IU]K/A6]UG3)]%U>\\-ZI=6TU]H=UJFBW5WHVI7&E
MSVLM]I-Y=Z==/+9W$L+R7OA;P[J>IZ)K6HZ'I.H:SX:FOKCP[J][IMC=:IH,
M^IV+Z7J4NC:A/;O=Z8^H:7(^F7S64L!O-/8V=SYMN3&?R!\:_P#!3#XZ?![1
MOVL-/^+'[-O@F]^(7[%$/[-GQ9^-ME\(/BIXD\=>#=0_94^.NI^)HO%?Q-\"
MZIKOPR\&>*;KXA_![0/AS\4?%GBGX:>(/"6CVFI>'?#.B:AH7BZ_;Q9:VMA]
ME>'/VO=,^)?[4]E^S[\'-/\ #GQ!\*^%?@O9_&#XV?$[3/$RW.G>!&^(LFF?
M\,_^"M(M[&SN;/6_$OQ0T:'QEXZNX[G4M.B\/>!/#VB:R_VP^-='CB /I2S^
M%?PWT[0/$/A2P\"^$++POXNO/$NH^+?#EIX9T.VT+Q5?^,Y9Y_&%]XETB"PC
MT_7;SQ7-=7$OB2ZU2WNKC7)+BX?4Y+HW-P9>#^!_[+7[-W[-%MKEG^SU\"/A
M%\$[;Q++;3>(HOA;\._"7@7^W9+$2K8'69/#.D:9-JJZ='-+!IJ7\EQ'IUN[
M6UBMO 3'7SM_P45_;ILOV%?@1>_$;2/!L'Q6^*%_%K-YX&^$::XVA77B31?
M^CS^-/BGXHO=7AL-6?1_#'PX^'>EZYXFUK5I-.N(KC4T\-^$+0-XA\8>'K2\
MY+X]_P#!2'P?^S?^U!XF^!7Q+\+2V_A?1/V5/#7Q_P!"UW0KF_\ $'Q"^(OQ
M!\8_&O5/@SX1^!?PX^&NGZ6U_P",/&_B[5=/B/A:PTN_DU'5-2NQ9SZ?I]A;
MW>K6X!^F%%?D7\1_VU_VV_#][^R%\'O!_P"RY\ 7_:W_ &D_A]\;_BSXR^#W
MQ$_:0\5^'?!GPF\$_""_^'$,]G)\3/!_P3\?1^*/%:1?%;PEI6N6UIX=L= 3
MQ)'K-OX?UW7-)M+35;W].OAKJ?C[5? G@V^^*GA_PSX4^)=[X:TBY\>>&?!?
MB/4/%_A'0/%LNGVLVO:1X:\5ZKH'A74_$FAV&HS36VFZW?\ AGP]=:A:QQ7,
M^DV,LIMXP#NJ*** "BBB@ HHHH **** "BBB@ K\-?@O_P K!G[<_P#VCI_8
M_P#_ %;'QBK]RJ_#7X+_ /*P9^W/_P!HZ?V/_P#U;'QBH _<JH;B"*ZAD@G4
M20RJ4EC8*R21L"KQNK!E9'4E6!'(/:IJCE<HNX#<<X XQG!(SEEP"0!P2>>
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@#\FOB;_P IK_V0_P#M'5^W%_ZOS]B:OUEK
M\FOB;_RFO_9#_P"T=7[<7_J_/V)J_66@ K\$OVC?V/?C?XE_X*+Z)H?@7PB;
MS]C3]K7QE\"_VA_VO/$>G"TM+/0?B;^Q"VJWOASPOKA,,8U9/VB+RU_9FT+4
M;>6UO)?[ ^"'BVUN-2M(KB(2?O;10!_,+_P4BT_]M#XL_$O]J'X$:5\.OVT?
M&MG<?$']F75OV6/#?P)\'?#SPW^RMJ'P<TVS^%WB?XF_$#XT?&G4/"$'B+6O
MB5X/^*/A_P"(=M_PJ?5O'L6N)9+\*[SX7^#/[*O/&7CJR^I?C9^RW\0O%%[_
M ,%VM:L/@_<Z[JO[3'[,/A/X?_!*_?2]'N;SXJ:CHG[(?B[PU:^&?#;W,TAF
M&E_$75H;"&VOH;" :]-%(7NGMR]M^ZM% '\[_P"S[?\ QI_8O_:%^)?BCXT?
MLU_M,_&Z3]KK]GO]AJX\)^,OA;\,KKXJOX&\;?"3X.>&?@E\2/V<_B[KMMJD
MS?#0:?XV_M[XVKXZ\:W6E_!VXC\=^.3>>*++Q5I.JPZ_\_\ BSX9_'[X$?!7
M_@J;^P9?_LN_'G]HCXH_M]_%W]HSQE\"/VC?!_@6_P#%GP9\6Z-^UMX:3PYX
M2OOC1\5]7US6]+^#MU^R4ZP6VLVGC23PVMUX"\)^#[KX-Z7XE\1ZG=:?IO\
M5!10!_+K\>/ 7[3'P#L?^"JO[.?A3]G?]HG]IOQW^W-^S-\([+X)?%SP[X.N
MM8^&_BKQ9X<_9"\/_LH_$RW^)OQ"M=3U+3/AYXITB?P7<?%0V/CS4=&U7XAQ
MZQ-H?@Q/$GB=[6'6/HO]KG]DCX[^.OBA\%O#GPO\,WTWPG_;6^ OPT_9(_;[
MO].6"VD\#?#WX,^+/#_Q'7Q'K-Q-<6WV@_$#X,ZO^TQ^S'J#QI=W,>K?$?X=
MRWL>K66AQZ>/W_HH _E@^,G[)&J6'[47[<?PH^,G@W_@I!XV^'7[87QL^&?Q
M&^%5U^R7I_@^_P#@-XZ\$7?PY^#GPQ7P7\5_%#_#BXTOX-:S^S_J?@'4[Z'6
M?B)XS\-6ES\.=/\ #VI_#RZU_P ?-/HVL?<.A_\ "1?L;?'_ /X+7_ML^/?A
M1XAU+P9<:3^S=XZ^%MW;OI%IK/QTM?A%^R5X;T"^\&>!]8G9WN=2U/XE1S>"
M-!LWLX2WC#58+2PL+EYX86_;ZL_4M,LM6MGLM1M;6]LI?+\ZTO+:.[MIO*E6
M9!)!.'A<+*D<BAHVQ)&CG)1< 'P!_P %*O!/C;XV?\$YOVHOA_X>^&NM>-_'
M'CWX'ZQI</PH\,36NK^(?$.H:C#:2WWA#1IQ>Z59:A?W$0N+"WF2_LDNF#21
M20%D"_B-\)/V$9OCGXC^//@/]D[]B/XZ_P#!*KX ?%W]BG]H;X _'RU_:&L_
M"9'QW^)OQ.TO2/#W[./B+PQX#\/_ !=^-4<EM^S_ )^*.N:YXCNW\(ZA=:=\
M0?\ A#)++6XKP0I_6110!^0?[,7_  4"^/?B1_A5\#OC?_P3X_; ^'W[08\0
MV/PY^+NO6OPWL;S]F?P];Z#IMC'JOQL\/?M!/JFB^ /$OPQ\0R.UQH/A[PJF
MH_%&'49KBQU#X>6&AV,OB4?1W_!2#X,>,/C3^RCXYA^%NEQ:I\<?A'J/A?\
M:,_9ZA(87;_'7X >(=/^)_PYTJRE$$XC'C+5?#S_  ^U9'"Q7GA[Q=K&GW!-
MM=SJ?NZB@#^<'Q_^QC\9OB'_ ,$P++Q5XX^#6O>)?VDOB)^U=\/?^"C'[3'[
M-4&H65YXT^(2)\9='\>?$3]E>QUR?4=*TQ]?T7]FS3(OV>O"5O<ZA_9.L7O@
M_0_#MW+IFBZO<76F^37'[)OB_P#: NOVOOB=^QI^QQXF_8^\#:&O['/Q0^"'
MPL^*O@Q/V=]'_:D_:._9,_:,\0?'?4O$5W\"+[25'PGLO&.C^'O#WPA3X@>*
MO!&@^*?$5OJ^C>(-2L+C3/#]I._]2]% 'YL?LV_\% _&/Q_\>>#OAKJ?[!7[
M;OP*U6?P[KFH_%+Q7\<?A19>"/A=\+/$&A-J5C#X-L_B#>^(VT[XNZIXEU'3
MX7\,:S\([?Q?X5N-$U33]5US7M"N91I;?,?_  4[^*7[1"?%?X8_!'2_V6_V
MS/CE^R!XH^'WBKQ#\?;O]BC3/ TGCWXC^(+O5)?#WA[X#>(/%WC+XK_"C6/A
MW\-YM";6_%'Q$U'P%JJ^-?%R77ACPKI^M:!X>N/%:ZK^X=% '\RO[<'PN^'?
MQM\0?\$]_B;\3/\ @D7^U/\ 'S]G_P +?LP?M2?#V/\ 98\)^#?AII7Q"_9X
M\;^(O'/[(4?PGL_'.@6/QT\&^#O#&FV_@'X3?$72M*@\/^-M=TJWM[G384A%
MQ#'<6G>Z7X8UWP#^P)\ ?@C_ ,%%/V2/VG_VF/"WCS6?BGXULOAI\&_"'Q ^
M-_B7]FSPS8:C>:S^SY^SQ\:=4^'?C.Z\>>//$.A> ?%-Q\.;3XE2+?>![;7_
M  R+?Q?K5@+#1_%FJ?T6T4 ?#O\ P3=\,?&/P?\ L5_!/0/COI/B7PWX_MK?
MQW=VW@WQMK]AXL\<_#WX:ZQ\3_&NL_!'X8^._%>G%[;Q3XY^&/P5U#X?_#_Q
MGXE-Q?76O>)_#>JZMJ&IZI?WESJ-U]Q444 %%%% !1110 4444 %>5_'3_DB
M?Q@_[)?X^_\ 45U6O5*\K^.G_)$_C!_V2_Q]_P"HKJM 'D_["O\ R95^R%_V
M:W^SW_ZJ3PC7U97RG^PK_P F5?LA?]FM_L]_^JD\(U]64 ?F'_P49\0?$;X;
M^)_V'?CKX _9Z^-?[3%K\#_VIO%WB_QK\//@!H_A77?B)#X;\7?L=_M2_!RR
MURUT[QGXO\#Z%+IMCXQ^(OAB#4WE\06]Q%;WGF6UO=RJ(&^(?VB?VG/VLOC)
MK7PS\00?LL?\%)O@G\#_ !C\(OC)HD7PA^&?PZ^",?QQ\1_M%:7XX\'6'@[P
MM\;/&%M!\9](^"GP8\6>$)]7\2>'/'4?CWPCX5U.?2-<A^)6J1K!X6\)^(_Z
M&J* /PP_X)W?LN?$+X?ZY^QIXA^+OP>U'P_J_P ,?^",W[+?[-GB*Y\26>G3
M2>%OB18:I"WQ1^%ES-;W][$^J6L6A:,^NVUO%)IYM(+:,:@8FAMU^/?V</ W
M[17['5E_P2G^-'QH_9Q_:&^(_AGX3?L?_M1_LL^//AQ\,?A]J7Q6^(W[.?CS
MQQ\3?AIXP^&?CB7X<^$+_5]4'AWQ9X ^&A^%-SK?A?1Y9/"FG7'AE-?NM!\(
MRZG*G]2-?,7[0G[)/PI_::D\+7'Q(U+XLZ3>^#)M7_L'4_A-\<_C-\#M473_
M !%)H#>(M%U>_P#A!X\\%3^(](UN+P[86]S9>(#J4=G%YK:1_9MQ))/( ?A1
M^P5X"^)/Q:\'?!?Q1X;^'.H?">+2?^"G_P#P5?\ $WCFT\-W.CWR_L_M\0O"
MG[5/@>PM]6O/#^L2Z7=:]X2^('BW3?"FJW'A+4KO0I?&\%U#H&I-I9L[JN*_
MX)S?LW3^%]3_ &1OV9_VA_AQ_P %08/BI^R#XRGT^[C\=^'?"%S^PE#XM^$W
MPJUN)/VA/ OQ1T_PE:Z/XC^%WQ3U+6M0\/>"O#6E^-]1^,TFO^+)$^)'@^/P
MM!XA\8Q?TP?"#X0_#GX"_#?PM\)/A+X6T_P7\/O!EI=6F@>'M-:[EAMO[0U*
M]UK5;Z[O=1N;W5=7UG6];U+4M<\0:]K-_J&N>(-=U+4=;UO4=0U;4+R\GZ_Q
M)H-EXI\/:[X9U*34(=.\1:-J>AW\NDZIJ6AZI'9:M93V%U)INM:-=V&L:1?I
M!<2-9ZII5]9:E87 CNK&ZM[F**5 #^;']F234?V8O''[9?C3QUX+BUOX&?\
M!%KX<_&_X+?LFZ3X>U2-'\>6_P ;38_M,R>"="2X>^@M/&7@7X.-^SK^S+X2
M@D>:^;4;GQ+(T-PGBBW@A_<7]J31/%_Q,_8Q_:4\+:%X:FO_ !YXZ_9H^,OA
MS1?!VE3->WE[XL\3_"SQ%IVE^&K*6^M](-S=W6JW]OIMK)<V^GK<O)%-)':)
M*8XNH^"?[-'P@_9^^&:_"7X<>'+B'PC-J^L^)-:?Q7KWB+X@>)/%_BKQ'JIU
MSQ%XM\<^+_'>K>(_%'C/Q1KNKG[?J>N>(]6U&^GF"1I)%:P6UO![M#&8E*DA
MLMNR%*\E5#$@NXR6#-\NQ0"%"_*68 _DO_9H_81O?BX?B/\ "K]GG]AS]H3_
M ()A?!?XH?L&?M)_LX_M8:K\<(/"J6G[17Q(^+O@C2O /P?O_!G@C1?C/\4#
M]I^$=[??%+QN?'-Y!X1NETWQ/'X02WNK#Q==QZ=^F_[/7_!13]H*QTKX9? ?
MX\_\$[?VS]._:/L?$?@GX3>./$WP_P#A;8>*?V8-;,<EQX>\0_M ^&_V@X-4
MT3X?:3\(+:'1X_$6H:'KL6@?$:V754TGPAX#\:1VUMJ6J?L]10!\%_\ !2CX
M+>+_ (X_LC_$C1/A99PW7QT^'LOA7X]?L\/);1S2Q?'W]G_Q;HOQA^$UE!.U
MU82V,?BCQ=X-L/!FK7=O>VLO_"/>(M:MVN%M;BZ@N?A#X1^!OVH_V7/^"?O[
M3'[57A3X,>,O&/\ P4,_:X\;W7[2/Q"^%=Q;>&_%GC/P;XA^(GBGPYX3\$_#
M71]!@UKP]H_BB']EOX&7&C:=9>%=4\7Z5;>(]<\!:Y93^)M%TW6[-=*_>.B@
M#\=O^"<6MZ+XDTKXS_#W7_V(OVYO@UK/CE9O'GQK^-/[>7A7X.2>)/VG/%WB
M>*+PMJXU74_A?\3/'=GJ,^G>'[>RT?3/ MGX8\'_  ]\$^ [/2_"'@70=)\,
MZ;;:+9]%_P $9/V1[/\ 9 _8TT?P=J7PNU7X8_$KQ3\1OC%X@^(MMXEOKS5?
M%NLVVD?%;Q?X,^$EQKFI7^IZQ/)I^E_ WPW\-M$\(6$.HR6&E^%["PAM;6SE
MENQ-^L]% '\]?_!2G_@GK^VM\4;K]M'X[?!3]JVQU*#XH_LX7_PC\ _LW:Q^
MS3IWQ!UO1_!MKX/5?$WPR^&'Q%O?C3X:TWPI>_&3QY%<^*_%'B5/ @U;4+AO
M!^B:O=:KI7@?0K"QQ/C[^P'^TO\ %;]O7X;?'"'QK&?CS^SK_P $^/"-M\&/
MVNX/!C^%OA/J'[7>C?&GXA2:[X>\8?#*R\0^(+>/P!\1/A]XUUK0_''@^&[U
M_4/#_@CQGJ5_X.\0V/B[2-#U"V_HOHH _!K]H;QY\*/CA\!O@!XQ_;G_ ."1
M/QH^,_QM\3?"3XM6MC\+_"_[/NE_M'ZM\'?B5I>J^$O#'B'X867Q8T5)[CX3
M?\+9UF.S\2_#'XP7E_X,\"WOA;PU#XK\0^./"NOV=CIZ_I)^P-\._B_\)?V-
M?V9/AK\?=<N_$7QB\%_!OP3H?CW4-2U>7Q%J,&OVF@V*2Z+?>)[F:XN_%E_X
M>@"^'[WQ;>7%Q?>*;G2;C7[Z5KO4)B/L&B@ HHHH **** "BBB@ HHHH ***
M* "OPU^"_P#RL&?MS_\ :.G]C_\ ]6Q\8J_<JOPU^"__ "L&?MS_ /:.G]C_
M /\ 5L?&*@#]RJKW)(BP/XF5#QGA_E) XZ ECU( )"L0$:Q10!_,7X;_ &*_
MVE?AY_P3-^"_Q4^&_P +=8T?]N#]G?0OVJ?#U[\(M02QL/$'QP_9^^-?QO\
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
M[6[72]#AOQIL'YD_ _\ X)B_%KX5^'_V=_@-XJ_:JTOXD_LB_LI_%K0_BO\
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
M1/A[H=KX2?P_H^H/=>*=0T#5]8U'5_[2 /./VH/'O@'X>?MW_LW>'_AU\?\
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
M[( ^X**** "BBB@ HHHH **** "BBB@ HHHH **** "OPU^"_P#RL&?MS_\
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
M*/B7K-I+;RO>:#\*OB]J'A/QDNHM:-9?\()XL\?WRWD=I>"Z/WM^S!\![?\
M9O\ C+X7^&NB2^(O%&C^%?V1-&L]5\?:Y;7$M_XY\=:Y\8/&OBWQMXGUS593
M-#<^)O%OB?7-2\4:M!<7USJ"MJA6:6[=//E^GS[*.&,OJ9WCLOC2JX7ZFX95
MECJXB4,#B\MADM3.:\I.L\36IU95:]+*Z->7[QYCBJL)SEEM+F^;R;/.*\?3
MR3+,9*M1Q,,90GFN:1HT/;8W!YK/.Z>245%4%AJ,H>QP]7-J]&%X1P6&HNG2
M68U)4^QT7]M_3?'GAG]D^Z^%W@VY\3>,OVG]:NX[KP5J&ORZ+=_"WPQX"M)Y
M/CQK?BV[32+V=+KX7:Q;+X%&G26-FNN^.M8\/:(E]HXU%;F'Q76OVN/V^/#W
MQG\!? [4OV1O@'+XS^)'A#Q_XY\/36?[4_BDZ)_8/PUU'P=I7B62\NY/@&)[
M:XDNO'6@OI=J+>X$Z27@FGMA:C?U_P"R[\)=*\)_MO\ [>7B.T\(WNE6<&M?
M".#P1?WEE?6^AVMEX_\ !2>/_BC_ ,(8\\7]G'_A*_B5,NN^-)-*9EN];@B&
MHNLEG;0IW_Q1TG6Y?^"B'[*>N)I6I7.B:=^SC^U9I^H:K;V4\FEV%]JWB7X
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
M73K+Q>=<&B76L?:[6[M#HD%Y)K OK.\T\V/V^UGM4_.S]ONS^,'Q _X**_\
M!.OX5?#;4OACID%M\*OVSOC;I-U\;_ /B3XI_##1OB5\/;?X!^!/#_BNY^&_
MA7QM\+]1\9^,=+\"?%_XG>'?"=JWQ-\)1^&%\8:QXZC.LOX<_L34?B34/V@_
MVE/VM/B#^R=\-?!W@C]E7PI^VK^SO^UM^WAX8U;Q!KMCJOBO]CJ_\-?LY> ?
M"GPU^)GC72O!,.L:;\6=0\9>*F_:=^&=QX/\+^$_%B:IX,U2R^(=WXO\8:EX
M8\.:K;:X ?T&^//VJ?V;/A=\*M&^.7Q'^._PC\$?!OQ%%I4WAWXH^)OB-X/T
MGP%XB37;=[K1#X<\676LQZ%XA.LVT;W.DKHE]?MJ=NK3V N(5=U]0\#^/?!7
MQ,\+Z5XV^'GBSPWXY\':[;?;-#\5>$-=TGQ-X<UNSWO%]KTC7=#O+_2M3M1/
M%-;_ &FRNYX&G@FC61C&:_E*^&&A_$[4-?\ V!OV>/@S9_"GPY^W/\%/C[_P
M52^(7BB[^*T&O>*OV-=)U*V^)ITO]H^U^'W@+PK;Z7XT?PCK7B']HCPHO[/O
MA71_%GPQ\0?"OPS;>(M*\8WGBB]T[7=.\5?HS_P0M3PM\-?V5_VEO@Q#9:I:
M>./V:/VV?VG_ (>_'HVFN?\ "0^!M0^,9U?3/B/XVU;X):=;>%O"+^%OA+JT
M/C33[_P9X$?1KG5O"[SWVCZUXA\6^((=3\3:L ?LUJ?C[P5HGB3PQX-UKQ7X
M<T?Q?XUBUR;PAX5U37=)L?$?BF+PS91:EXCD\.:)<WD>IZ['H%A-'>:W)I-K
M>1Z5;.D]^]O$Z.WF_BC]J#]G;P3\5_!_P)\8_&SX6>%_C1\08WF\#?"K7O'W
MA33/B#XLA47Q270O"%WJ\6OW\=R=-OX[%X; B_N+*\M;(W%U9W4,/\K7@7_@
MH!\"?CM_P5"_8,_:/^(&H_&S1_BAXV^)_P >OA9X-^%^O?LN?M1:''\!?@YX
MF^$NN>!/@]X$EUK6_@KIOA_Q!X_^(_Q$U^+QW\?O%?AO7M>\(^"-1O/#_A_5
M?$,?P_\ AEI_C&_WO^"=/[0/[6/P=_8YL/V]OBYX:_9Y\6:-\=?^"AWB+P9^
MT/X03P?\0O%G[6WB'7/B3^VC>_LFZ+KVF?&>?XF#P;IES\"]2U;PUX;^'WP;
M3X5ZWHEY\)/AY97VF_$/P[JOC&>+PZ ?TI:;^W9^Q1K/B?3O!.C?M=?LQZOX
MTUC7;'PMI'@_3/CY\)[[Q1JGBC4M2CT:P\,Z;H-MXNDU2_\ $5YK$T6DVNB6
MMK-J=SJ4BV4%M)<,$KKM3_:M_9BT3XG)\%-9_:(^!VD?&634]-T6'X2ZI\6O
MA_8?$V?6=9LK/4M'TF#P'=>(8O%4VIZOI^HV%[I=C'I37-_:WMI-:Q2I<PE_
MACQWX2\.?M _\%&_AW\*8/".D6/P]_8G^''AK]JSQTUKH46GQ^,/V@/C+J/Q
M!\!? 31]5ODTX07UM\,?"W@KXL_$R;2H[F\/_";:S\)_$[2V-UX6T^2X^=M)
M^$?QS_X)K?$_XB_&CQ#XP^"_[2?P6_;'_P""C^G^-/%6G:Y\)O&7A/\ :.^$
M.M?M;^/_ (8_!'X5V?@KXEQ_$WQ_X3^(/@WX110> M!/A9_AW\.M0G\(Z9JV
MJZ;KB:G:QZ%>@'[V@Y /J >QZC/4$@_@2/0D4M(N-JXZ;1CG/&/7O]>_6EH
M**** "BBB@ HHHH **** "BBB@ HHHH *\K^.G_)$_C!_P!DO\??^HKJM>J5
MY7\=/^2)_&#_ +)?X^_]175: /)_V%?^3*OV0O\ LUO]GO\ ]5)X1KZLKY3_
M &%?^3*OV0O^S6_V>_\ U4GA&OJR@#R[XI?&_P"#GP-T6Q\2_&KXJ_#CX0^'
M-4U:/0-,\0?$_P <^%O .AZEKLMKJ%]%HMAJOBO5M)L;O5I;#2M1OHM.@G>\
MELK*[NHX6AM+IX=[P'\1? /Q3\,Z5XV^&7C7PI\1/!>NQ3SZ)XP\#^(=(\5^
M%M8AMKF6SN)M+\0:%>7^E:A%#=P3VDLMG=S)'=03VSLL\$T:?F'_ ,%08?C/
M<^/?^"<EM^S[X/\ @SX]^+$O[9_CE?#'A3]H#Q+XI\)?";4XD_8,_;(N->/B
M?7/!G@SX@>(;62ST"/5=0T*.R\)ZG%<^)+;28;UK&SDN-1M?K3X/_#W]H2XG
M^"OCCXP^+_"_PN\1>$_ ?Q!\/_$[]G?]G^_TSQ1^SQXE\3>)?$6CW'A;Q18^
M+/''PP\)?%62Z\(:'H%Q'I]O90^$M.EO?%&OQW]A?K86]UJ !ZS\:?VA/@9^
MSCX3/COX^_%SX=?!KP<+V'34\2_$OQCX?\&:1<:A< M#865YK^H6$=_?RH&D
MCL;(W%X\222+ 4CD9>:^)_[6O[,OP5\&^%/B'\7/CU\(OAKX&\>-I:^!?%OC
M?XC>#?#/AWQH-:BL[G3)?"FL:QK=GI_B"VN[/4++48[O2[BYMETFYBUF29-)
M<7I_)'X^Z5^U-\3_ /@L%XB\._!2\_9RTMO@/_P3Q\#^/?AOK/[3'PH^(_Q?
MT#2_&7Q?^./Q;T#Q[:> -%\%_$_X6VWAG6/%UC\+_A]I7B_XBV>JZMXC\/\
MAW1+;11X6\16WB)WT>C^RA\5;7]L;]MGX&_%/XH_#S1+&S\4_P#!&WX8?$#P
M?\/9-"L_$WP_\(^(OC1\<?$5A^T#8>$M;\0:+:7-S:ZEH?A/X,>'9K<6,)U/
MPC%I]KJL:2 VTX!^Z]WX\\%6'@N;XCW_ (M\-6/P_M]!_P"$JN/&]YKNE6WA
M&#PM]D&H_P#"2S>)9KQ-%B\/_P!G$:C_ &R]\NG?8"+S[1Y!WUKZ=KFD:QHM
MAXBTK4K'4]"U33[75=-U?3[NVOM-U#3+Z&.YL]0L;ZTEFM;RRNK:6.XMKFVF
MEAN(9$EA>1'4G^%/XC?MD^';W_@EOI?["?QMOOBKX'^&O@O]D/\ :.\:G7/
M_P *OCKXZ\*_&B.'Q#\=++]B?X$:'X[^#OPV\8>!M"^$G@SP5H_PM^(/Q:\3
M^+/B+X,TR&WTCP!\-]274]#U#XKQ:#_7A_P3\\;>%_BC^P1^R3XM\-O?7GAK
M6/V<?A591'7/#NN^&;F8:)X,TKP]JL5WH7BW3-'U>WMOM^EWT,4E[8Q6VI60
MBU&PGN],O+2^G /3/@W^UI^S%^T1J7BO1?@+\?\ X._&76? L\=OXSTGX8?$
MCP?XYU'PP\P @DUJU\-:SJ4EE:SR%K>WOI!]AGNXI[6&X>XMYXXZG@3]L7]D
MWXI^()?"7PP_::_9^^)'BJWT_4M7N?#/@+XS_#7Q?XAM=(T8!M8U6XT70/$]
M_J<.G:2C*^IW;VHAL8W22Y:-&5C^8FFZ-XD^&O\ P5N^ 5U\<O"'PP\-VGCS
M]F_]IOX1?L9S?L_1ZG8Z39>&_"GC3X8^/_B9H?[0NA>)-)TQ;368_".A_#9O
MA??^"9'\-:5J-O\ $+3[Z)SKOAV87/V9?"GQT_X)]^,_V%OV-_B5)^R]\8OA
M)\1/"6I_LU?#;XG?#'X6>(_@1\9?"?B#X#? ;Q3\1[;5/B)X<\5_%OXS:9\6
M=%\?>!OA7K:>)O%_@VY\ KH'CBY\/VUSX<O]/\1I/I@!^DO@3]M3]CWXI>+]
M)^'_ ,,?VJOV</B-X\U^6[AT/P5X$^./PP\7>+-:>PTZZU?4!I/AS0/%-_K&
MI_V?I%E>:K?"QL[AK/3;2YO;@1VT$LB>[>+O&'A;P%X<UGQ?XU\0Z+X4\*^'
M=.N=7U_Q'XCU73]$T+1=+LHS+=:AJNK:I<VFGZ=96\:EYKJ\N(8(U!+R**_,
M#X->&_"_QW_X*-?''XG6GA_2].\#_L'Z)H?[,WPRL+'0=/TFRE^._P 6/"'A
MOXM?'_QZ/(C@;4;G0_AOX@^#WPL\):F(D_L8:C\8M-MY)E\0WWG>F_\ !5?X
M+_"[XP?L(?M/7/Q0\$:!XZC^%_[/OQ]^)O@FS\2VG]J:9H?CWP_\%/'\&@>*
M4T>X<Z5J&JZ"VH3ZAH<VIVMU_8NM06&N:6+/6M/T_4;, ^D?B;^UG^S-\%O
MOA/XG?%WX\_";X9?#SQY!IMQX)\9^//'_A;PGX<\6PZO:VU_ITOA[5-<U6QM
MM5BN-.O+;4S-:/+#;Z7(=2NI(+&.6XCN>-OVI/V;/AGX;\'^,?B1\?O@M\/O
M"7Q#M&O_  !XH\<?%3P#X3\/>.+)+:TOGN_"&LZ]XAL-.\26JZ??V&HFYT>Y
MO+?^S[ZSO!*8+F%W^6?#NB_&[5OV&OV97_9V\/\ P!UWXIP_ +X76NGC]HS_
M (2H>!K?2=4^#%E;7ZQR>"=+U7Q$MY>ZF-$@U"..*&QN?#IUM+F7SEMBGRC\
M!_C#X!_9O_X(TZ7\6#\/(]8E_9G^&7Q8^'^G_#WQ]>>"[Q+_ .._PC^+7C_X
M'7_@?0]=T\V?A:R\.^,?CQH(\+^!9--CL'B\):EH,,6DFZC728P#]5+?]J3]
MFV\^%FN?'.P^/?P:U'X*^&9+J+Q#\7=/^*'@:]^&6B2V,EK#>1:MX[MM>D\+
MZ;+;S7UE#+#>ZI!,LUY:0F/S;JW27M/A7\7/AC\<?!&A_$OX/>//"GQ,^'WB
M6"6YT'QGX)UW3/$GAS5(X)WM;E;35M*N;JTEGM+J*:TO;82"YL;N&6VO(H)T
M\L_SY?$_]EWXU_!SQQ_P24_9+^'J_!+7+S5_$G[5G[3'QT^(OQR\(ZSXM^'7
MB']K;1O!WASQ?J/Q)UCX.>"_$_@&Y^)6N7WB[XL?%OQ5X"\)77COPMH_@&[T
M70?%^FZY!=_#;PKIJ_IE_P $Y?VL_%7[3&D?M,>"/B-X,\/>&?BG^R5^T]\2
MOV:/B)XA^'^BZOX?^%'Q0UOP?<6VIVGQ(^'.B^(-7\0:[H&G>(M(UBPFUWPM
MJOB+Q1=^&?$JZIIA\6>(XDBU&0 _2"BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ K\-?@O_RL&?MS_P#:.G]C_P#]6Q\8J_<JOPU^"_\ RL&?MS_]HZ?V
M/_\ U;'QBH _<JF.ZQJ78X49R> !@$\DD  XP"2!D@9YI]07 !B8$ \$C(S@
MHK.#]05!4]0P!&",T ?/O@K]KS]E/XD^,E^'/P[_ &EO@%X\^(C-JD?_  @/
M@SXQ?#OQ3XU$FB17$^M1-X5T+Q'?ZXKZ/!:W4VJ@V.-.BMKB2[,*0R%?<-=\
M0Z)X7T/4O$WB35=/T'P]HNGW.K:UK>LWMIIFDZ-I5E ]U?ZIJVHWLT%EI^G:
M?:QRW5_?74\5K9VT4MS<2QP122+_ #I_\$8?"?[7WB[]D'1=+O?#/[-/PQ^
M7B7P_P#M6:+\)?V@_AYXM\4Z_P#M<>'/&^J_'CXIZ3H_B76_ /C#X.#X2VD?
MA^_N_$-_9%O'WB>TD&D>&;?4-&U&'4-2L;3]W_B%;^ - ^ _B2V^/NL:!XF^
M&F@_#:\7XO\ B#XGVGAMO#>O^$M&\.N_C37/'>GQZ=I_A-]+U'3[2_U+Q#96
M^DV6AM!)=0VNFP6?E68 ,3X1_M7?LS_'W0?%'BCX(?'OX0_%OP[X(GN[?QGK
M7P[^(?A/Q?IOA.6R>]2;_A)+S0]6O8-$B=-.O;JUN-2>VM[ZPMI]1L9;BQBD
MN%?\,/VK/V8OC;J>J:)\&/VB/@;\7=:T/33K.MZ-\,/BW\/O'VJZ-HRW$5HV
MKZIIWA3Q%JUW9:6EU-';-J$\*6@N&$'G&8A#^6W@_P#9<\8_MER?MA_M(2Z-
M<_LF:%^V)^P[>?L9_ #0!IEW#\0=)^'&J0?%2ZT3]HOXY>!K&7PO9Z1X[N+K
MX@:=J/P[^'$?B(^)?!/@"SDTC7_$'A[Q-XDUWPUX9^8_VE/'OQ\_9;_9W_:S
M_8O^)^D? ^Y:U_X)5?M"?%?X.?M$?LP^"_'/P\\51>"?@EH_@3X6?$+PKX_^
M%OC#6OC%JNFZU967Q.\*:YX4\<:3\4/$VF^(9K#Q++<Z-H6JZ='!. ?O;\&_
MVH/V<OVB+OQ;8? ?XZ_"3XR7O@+4ET?QK:_#'XB>$O',_A74G#^5:Z[%X9U?
M4WTYIFBGBMY;@)!<36UU%!+));3*COC5^T]^SK^SA:Z+??'_ ../PI^"UGXD
MU*'1_#UU\4O'WA;P'!KNI2RVL1M='D\3ZKI:ZDUNUY;/?O9F:+38)!<:A);0
M?O*_.R/P+X#^'W_!2K_@GA;? #P_X'\/^&+O]@#]KCP?XMMM.D72-1NO@9X#
M\3?L93_!K[)HFF26RWZ^&?%GB22Q\.7&LZ8+/3='\3^.TL;B"^NUMFJ_M)_L
MY_M#>$?V[_$W[:7PU^$_P=_:=\'^._V2='_9EN?AU\6_B#8_"Z[^"FI^'/&W
MBOQW?^,=-U_Q!X6\8Z!K7PJ^*%GXEMM&^+NE:586'C2SD\(>&KZWL_&>EHFE
M:0 ?HK\6?VI_V;_@-H_A+Q!\;?CG\)_A)H?CV_L],\#ZO\1_B%X1\&Z;XOO;
M\V_V:+PU?:_K%A:ZVICN[2XEFTZ6X@@M+NTO9Y8[2Y@F?UC5_%WASP_X?U/Q
M9K^L:9H7A;1=%O/$6L^)-9U+3M-T'2=!TZSEU'4]9U/5[R[BT^PTK3-/ADO[
M_4KJXBL;6SCEN);@107#1?R!_L<^ _VOOB?\+OV*/ O[/5G^S(_QO^'W_!)2
M#_A/M3_:WT*X^('PMO/@;^T?\;/'>G?LVZ+\)_#WPZU73_%B:X?#WP(U\>-O
M$VM2WO@S3O!=Q\/-)\4^$O%'B*^CAT:#XF_\%!O@#K_[*7[/7["'BG0OVFOA
MS^S9X%_8B^%NL?%?QIKWP*^,/QO7XZGPW\*;;3/AI^S?IGC_ /9U\*^,?#-W
MH%]KFAV'B#]H3Q[KMGHW@O7O"6EGX96-BMGX\\4'PN ?V)Z/K>D>(-)T_7]"
MU*RUG1-6L;75-)U?2[J"_P!-U33+ZVCO+'4=-O;1YK:^L;ZTFBN;.[M9)8+J
MWECF@D>-U8^'_#7]K']F;XR>.O&7PO\ A+\>OA#\3/B/\/))(_'/@3P)\1O!
MWBKQ9X4,,MM;W$NMZ%HNM7NHV-M:W-Y:V=Y=R0"UM-0F73;B:/4 ]JGP9\(O
MC7I'Q(_X(CI\5?@UK?BFU_LC_@GOXQTSPSKU_P"'?&WP[\1Z?XQ^&/P)UGPG
M>WUA8^*](\,^)[0Z;XQ\,7DFB>([6TCT_68+>T\1^&-3U#1[[3-2N/!_']E\
M /@;X,_X(I>/?A]I>G:1HW@/5M5_X1[4? -O(VHZ_P# 2P_X)M_M)^._&5L\
MVGBVE\3^&]3O?"_@#Q'*-4O)X-6\46NB7]Q/_:LJWL8!^N'@']JO]FGXJ?$+
MQE\)/AI\>?A#X^^*7P\DN8O'/PZ\'_$7PCXC\;>%'L+N'3]277O#&D:Q=ZSI
MATG49XM,U<W=G$-*U.1--U V]\Z6[97P[_;'_94^+GQ(\4_!WX6?M$_!?XC?
M%?P3&\WBWX<>"/B;X+\3^-= AA>*&[FU#PWHVMWFK1PZ=<SQ6>JRI:NFE7SB
MRU%K:Z!B'\N7[.]QKO[-?A#_ ()2?M+?M$:1\.-._9(E_9V_: T;]DR#X&P^
M)[#]HOP3X9^+_P"RCXC_ &AO#FD_M2^+-.T:#1/C=KZ_ CX:^(=(UO5_AAH'
MPZT9/CHUKXT\0V?BC5QHVI67I7[,/@SXW? 'P_\ \$4/&?QRT?X -^S5-XRL
M_!'[)>C_  HTW61^TCX&\<?M$?LM_&S4/A1-^T?\3M7TR;PE\8-,M?AC>^+=
M!^)U[\-M+^#Z^(_BQX@\-?$G6+3Q%8:'<Z/<@']+%I^U5^S=??&N;]FZT^.?
MPHN/V@+;2[K6;KX+P_$'PE-\3K73K*V%[=SW'@F+6'\0Q-;Z>R:G-;/IXNH]
M+;^TG@6Q62X3W^OYF/\ @F+\3OVBOA-^SO\ \$Q_'/C>/]G'Q?\ #?\ ;QU_
M5$\8#1?!_B'2?VEO#/QX^+7PX^+O[0/B;XJ>+?B[>_$+4/"'Q8U#QGXR\*^.
M4\<>%;'X/?#[4OARGBC3O"L&M>(=.\'WVIZI_3/0 4444 %%%% !1110 R1%
M=2K*K E3A@",J05.#QE2 1Z$9'-519Q#[L:KR#A>!E0@4XZ#:(U"XY&..IS=
MHI-73BV[/=*4HI]=5&23UL]MUN3RKF4K+F6S<8-KT<H.2TNM':SV*+V2,H4*
M H/ &-H!&TC:1M^[D9"CY25!"DBE%HB[L;LLJ*Q+EBVP*,DL222%&<YS\W4L
MQ-VBI4$I<Z<N:Z;DY2=^6_(FFVFH7?+I=W]]STL.,7'D<8\FONJ,8_%\5G%)
MJ_DUR_9Y;N]1;949F" ECG<<;NW&3SC(!Y))X!X44CVRNQ9HE<\;0VT\C//.
M<?>8?0M@<G-RBJL^7E4YK6334G=<UW9/7W4VVHNZULTU9(<(-)2A"2B[I.*L
MG9*]DDKV2]ZW-I=23NW4%N-S,5R6 Y)!QP00/;IU[X/7FHQ8P@KB%!@!?NKR
MH 4 X'*[ $(_B0!3E1BK]%$4HV>K:T3<I7WYOYE?WKR5TTF]+*R1RKI9*[;7
M+!IMKE=TX/>/NNUKQWNVVZZ6\2?\LTXZ8 XR"K \#((/(.03SC(!ITT0E"@C
M.T[@?0XQZCL34U%-WE>[;;W=VGZW33^YK[FQ\L;<O+%1V4>2'*DMDHN+C9=/
M=\]]3,FL0RH(XHC@@X)*A=N[:4 X4J6; 7&,\$ "FPV!5\NB !3M^8N%8LIR
M%88' (R/4@YR:U:*J,G&$H)OEE>_O3;UWLW)M-]6K-W=WJR94XR<6TO=MIRJ
MSLM%))J,EHG9Q:ND[:)J**,1@*H 4* /48P /? &/P'J:\3USX(:3KW[1OPN
M_:-N=7U.#7_A7\'?CK\&]*T& 6AT;4]'^//C/]GWQEK^JZBTEL;]-2T6[_9U
M\,6ND);7,=J]OKNN&[CDDCLBGN-%1&*BE%:);+LNR\O\S1N[N]WN^[[OS9&\
M,4@(= P(((;D8))(^A)R1WP,_=&&_9H 01#&".F% QQ@8QC!4?*I'**2JD!B
M#-13$1B&,# 0 $EN,@Y*E2<@Y^Z=H&< 8 Q@5^:_[>O_  3)^&7_  4/U3X8
MZ7\;?BY\?](^"7@N\2Z^('[./P]^(B^$_@]\?TL-:TOQ'X?LOBWHT&D7.K:E
M9:#K&EP2PG1=;T2[N+5FM%N+2:WT[4[+]+** ,;0]"TSP]I&F:%I%A::9I.B
MZ?9Z3I&FV$$=K9:=I6G6T=GI]A:6T"QP06UG:QI;P0Q1I%'"BQQHB (NF+>
M#:(DQG=TR2V[>6)/)9G^=V)+.Q+,2234U% $)MH&ZQ(<#"\?=&"/D_N<''R;
M>,#L,!MH"-IB0IM*>61F/:5*E?+_ -7@J=I&W! 4'(5<344 1>3&JL$15)#'
MC RS$L23@C)8[B2#\WS$$U\ ?L#?\$YO@O\ \$\]$^/^@?"#7/'GB*Q_:)_:
M \8_M&>+O^$_U'0=4DTGQAXWM-*L]2TCP\-#\/>'XK3P_9PZ+9_8;>\CU"\C
M)<-J$J!57]!** (1;P!BPB3<1@MCYB,8PQZD8['(X4]57 ;> D,8D)4DKE1\
MK, "X'0/A0-X&X#."-QS-10!%Y$(.1&H;GY@-K<J%/S##9V@#.<\ ]0#2"V@
M7I$@YR.,XZ# SG V@)@8'EJL>/+55$U% $*V\"DD11C/7Y0>.3C!R ,DG XW
M%FQDDEQAB+%B@+%0I8Y+%0V[;N))QNP2,X.%SPJXDHH 1550%4!5 P !@ 4M
M%% !1110 4444 %%%% !1110 4444 ?DU\3?^4U_[(?_ &CJ_;B_]7Y^Q-7Z
MRU^37Q-_Y37_ +(?_:.K]N+_ -7Y^Q-7ZRT -<94C&>V.F01@\],X)Z\5\__
M  ._9D^#/[-MM\5;+X)^!K7P-:_&OXU?$']H;XFQ6VM^)-7'BOXQ?%.ZL;SQ
MWXVG;Q%J^LR:7=:_/INGM/I.AOIGA^P6!HM&TC3X?*1?H*B@#ROX8_![P+\'
M?AOH/PI^'VC7.E>!O#=I>6.D:)J?B'Q'XLEM[34+Z]U&ZAN-:\7ZMKFNZF'N
M[^Y;&IZI>"%)!% 1;V]O;)\\?!K_ ()Z_LJ_ 'QEH?CKX7?#K6=%UGPA:^)-
M.\ Z;K'Q:^,OCCP-\+=-\6H]OX@LO@W\,?'GC_Q-\-_@W;:AITCZ*\7PR\*>
M%EC\/F3PS"(O#\\M@?MNB@#XZ^"?[!_[+W[/GC9_'_PJ^&5SX<\00^'_ !!X
M1\/)J7Q$^)WC+P]\._!WBK6-.\0>(O!OPA\%>-?&GB3P7\&/".M:MHVB7&I>
M%/A+H'@KPY+'H>AV0TY['2K"WM?H#5/A;X*UCXD^#/BS?Z##<^._A]X;\;>$
M/".OF_U.*31O#OQ)O/!U_P"-].BT^&[32KJ/7+SX?^#KB:2^L;BYMI-'1]/N
M;(7>IQZCZ+10!\Y?M!?LL?!7]IJT\&V_Q<\(:CK%]\.O$,OBKX>^+/"7C[XA
M?"CX@^!-?NM'O= U"_\ "7Q)^%'BKP3\0/#G]KZ)J-YI&M6NC>);:QUO3I$M
M=8L[Z&"!(O);S_@G)^Q[-\,OAW\(]+^"]GX.\)_"7Q'K?B_X<:A\,_&_Q(^$
MWQ#\*>+?%-EJ&G>-?%%A\7_AGXQ\*?%MO$'C^RU34(/B#K$_CB6^^("WDO\
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
**** "BBB@#__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>8
<FILENAME>audit_001.jpg
<TEXT>
begin 644 audit_001.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  $! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_
MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P  1" !. 3@# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#^_8NH.WG(
MZ_*Q'KU Q^M&]?7]#_A7R%^WE\6O&OP(_9!_:*^,?PXO+/3?'7PY^&6O>*/#
M%]J&GVVIV<.K:=%"ULUQ87L<MI=1EGV-%-&Z$-DJ2 *_BI/_  <(?\%*OX?B
M%\/BN3M+?#'PF"5S\I*K92!<C!QN) (#!3E1]_P=X;<1<<X3'8W):V54J&78
MBEA<1]?Q&(I3=6M2=:/(H8><7%0B^;WG9N/1IO\ -N-?%#A_@/&X+ YU0S*K
M5S##U<5AY8.AAYP5.E55&2DYXA2;<W:+Y8WY9:732_T$]Z^OZ'_"C>OK^A_P
MK_/M_P"(@[_@I9_T4'X>_P#AL?"G_P @4?\ $0=_P4M_Z*#\/?\ PV/A7_Y
MKZ]?1_X[:36+X<:>S6-Q;3]']5/CO^)B."/^@+/_ /PDPW_S0?Z"6]?7]#_A
M1O7U_0_X5_GV_P#$0=_P4M_Z*#\/?_#8^%?_ ) H_P"(@[_@I;_T4'X>_P#A
ML?"O_P @4_\ B7[CS_H*X=_\+<7_ /,H?\3$<$?] 6?_ /A)AO\ YH/]!+>O
MK^A_PI"Z#DG Z9P<9/09Q_GGT-?Y]W_$0=_P4M_Z*#\/?_#8^%?_ ) H_P"(
M@[_@I7W^('P\/89^&'A5O?./L&,C&0<'&.,4?\2_<>6?^U<.;:?[;BEKHM?]
MEVUU''Z0_ [DE]3SY)O5O"8;:S;_ .8GRT/]!%75R0IR1@D$$$9) R" >2IQ
M],],4^OS&_X)%_M,_%?]KG]C'PG\;?C1J>DZOXZUOQ=X[T:[O-%T:ST&Q:P\
M.^)+W3=-C33[(>2C1V\8#/F1Y,[FE<DD?IS7Y!FN6XG)LTS+*<7*C/$Y9CL5
M@:T\/.52C*IAJTJ4G3G.%.4HMQ?O.$;]%8_9\FS2AG>4Y;G&&C5AA\SP.&QU
M&%>,858T\1352*G",YQC))[*<M+:]$4445YYZ04444 %%%% !1110 4444 %
M%%% !1110 4444 %%?D/_P %P/VP/C=^PU^P/XQ_: _9]UC1M"^)&B^/?AOH
M%CJ&O>'=,\3Z:NF^)?$<.FZK#+I6K)):.\UK(RQ3;&FA8;X07P#^%W_!"W_@
MM7^WK^W=^W78_ ?]HCQWX)U[X=R_"?X@>+9-/\/_  S\*^%[^36O#TF@IIDA
MU72+..]2",:A<M+#B**8[1(%(4  _M)HIJ$E$+##%5+#C@D#(X)'7T)'H37\
MFG_!PK_P5L_;1_X)W_'KX#> ?V9?&/A'PWX=\?\ PGUGQ=XAM?$GP^\-^+YI
M]7L?&%[HL$]O>:W \UK&+.!$:VB98F(60*SEW(!_6;17\YG_  ;P?\%(/VI/
M^"B_PV_:3\3?M.^)/#'B/5?AEXW\ :#X6E\->#=%\'QV^G^(-!\0ZCJ7VN#1
M8XHKR66ZL+81R2[Q%'%B/RV>4/\ T9T %%%% !1110 4444 %%%% 'Y\?\%4
MP6_X)X?M@A59B?@IXI "J6.2EFW0 ]%!8GHJ@DD $U_!A\"?^"7O[>?[1.DZ
M1KWPS_9I\?7?A?68+"YTWQ9XFCTSP'H%]8Z@D\EOJ=AJ'C?4O#\>J::T4*S)
M>:6E]!+#<02QNR2HS?Z77B/PWH/BW1[WP_XFT?3=?T34O(6_TC6+&VU+3;U+
M:XANX8[NQO(9[:XC2XMX90DT3KOC1@ RJ1^;'_!0'_@I]\ _^"<EIX/TOQ_H
MWBCQEXQ\<QWMWX7\ >![+3HKQ=$TE[6&^UC5]3U:^T_2]*TN&:YAL[)HTO=1
MOK@/!;:>UM8ZEJ-G^N>&G'G$O#F'Q7#O"O#U+/<WSS,X8FG[25:U"-'!2H<T
M*5*=-5&E&,Y.K4C!7:;2:<?Q?Q0X#X<S_%X7B3BCB+%9%E.3Y;4P<WA)4J=2
MM*KB_K/OU*E*K)Q?-.*IT8.J^6,DO=E?^*3XI?\ !'W_ (*._"&TO=2\0_LO
M>,]<TFPBCGN]2\ W_ASXBA8VM9[N=XM-\$ZSKFM2K:K;F.XD_LY8XGD0$L67
M/YQ:GIFHZ+?WNE:Q87NE:IIMQ)::CIFHVL]EJ.GW43M'+;7UC<I'=6=Q&ZD/
M#<11R+PQ4*RD_P!UWP._X.*?V'/BKK5MX>^(FE_$CX#7=_>I:V>N^-='L?$'
M@]!-Y45K]KUKP=?:QJ6G327!D\ZXU+PW::)86X6YO=<A0LJ_E_\ \'#/[47[
M+/Q-F^$'PM^#5M\+/B/\2K98?B!XN^,G@]/"WB"\T7P9J>D3'PEX'LO'&A+=
MSW">)UU=?&%[IO\ :1CM]+M-!N1:20^(WNJ_>N$>/>/,;Q#EO#?%O!-?+YXY
MU75S>C3Q6'PV$P]"A6J5<;7C4CBL)7HPE"DI+#8VE4:J*-+#U).R_ N+. >
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
M*Z100QHTDLKI'&K.ZJ?X/_\ @[[(/[5O[)Q'(/[/GB(@^Q^(NIXK\JOV"?\
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
M -E ^*__ *F>H5^W5?YU\=_\EKQ9_P!E#FW_ *FU3_2'P^_Y(;A'_LGLK_\
M46)^%/\ P<"_MO\ QA_8N_84UW5?@=X=\;0_$3XKZRWPXT_XM>&M'U*XT;X)
MZ9>VLEQK/C'5O$5K%]F\,^(-1TJ.X\/^"KVXGM;NUUS4VU:PD6YT-6;^=3]B
MO_@Z_P#CC\*M#T;P=^V5\(;7]H*ST^(62?%/P-JVF?#[XCC3MUJ5N/$/A4:.
M?!7B>^MHH)U22Q7P+<2"2-[LLRS33?WS>(O#NC>*]&U+P[XBTG2=>T'6;&[T
MO6=$US3;;5])U;3+^%K>\T[4M.O ]K>V-W [Q75I<Q2P3QMLD1EX/\V'[3O_
M  :O_L _&S6=<\6?"'Q3\5?V8O$6LR37 T7P->Z7XH^%MI=RI<L;BW\$^([9
M?$%BBW4L#I8Z'X_T33;:UA>UL;.SD>WN[3Y,^P/*OB5_P=M?L-6/P]U.^^%W
MP2_:1\7?$PZ>&T7PEXM\/> ?"?A?^V)+60B/6_%.F_$+Q9=)IEE=[5NIM.\.
MWUQ<0*TMM'"P66/^('X ?!GXG?MX?M<^$/A;X*T-;OQY\>_BQ]HU9/#&DM#H
MOA2S\5>)1J7BSQ.]A8JD.B>$/"-EJ-YJMY(&M[?2=(M5$!,J6T$W]=FE?\&=
M'A&/4;)_$'_!0#Q/J.BK/&=4T_1/V<-.\/:G>68(,UO8ZQ/\;]=@TZ9P,17$
M^CZG%"P#M:3%0*_HM_X)]?\ !*O]DW_@FSX4U#1O@#X8U"_\8>)! ?&OQ<\>
M3V6O_$SQ5Y",L.GR:U;6.F66A>&;>222:V\*>'-,TO0OM/EZE>6E[K8FU:X
M/YP_^#N[1K'PW\'O^">7AW3%9-.\/Z[\<-%L5=MSI9Z9X:^$EA:"1LG+F&W7
M+$G>P8@FO(/^#/#_ )*]^W .X^'/P:)'<!O%/C\*?H2" >AP<=#7]+'_  5*
M_P""27PN_P""J.C_  =T;XG_ !7^('PQMO@WJOC;5='D\ Z?X=NYM7E\;VGA
MBSO(M4/B*TOUBBL8_"]HUK]@6U=WN+DSM(K!:XW_ ():_P#!%_X1_P#!*[Q9
M\7?%?PP^,?Q*^)TWQ@T'PIH&L67CZP\.6MOI4'A*]UB_L[G3#X?M;+-S<RZS
M<).UQ')^Y14&68R (<+S4[[)*UNQ^S-?YR?_  =D?\I+O @[_P##('PQ./;_
M (6C\8AGZ9XSTS7^C97X.?\ !2__ (()_ __ (*:_M!Z+^T)\1_CE\5OAQKF
MB_"WP[\+8O#_ ((TSPG>:3-IWASQ%XL\1VVJO-KUC>7":A<7'BRXMIQ$%3[/
M9VX1@S/06? '_!H21_PR!^U ,C/_  TI;\?]TN\%G^7-?UP2$!')( ",23P
M #DD]@*_,3_@E]_P2]^&_P#P2W^&/Q$^%_PR^)OCOXEZ5\1O'\7Q!U'4/'EG
MH-I?:??Q>&],\-?8+)= M+*![-[;2X+DM<I+.MPSA'6(A*_3MU#HZ'HZLISG
M&&!!S@@]^Q!]Q0!_EO\ _!QY_P ID/VLO^O/]G__ -9J^#]?W0?\$"B#_P $
MA?V*B""#X)\<X(Y!_P"+Q?$;O7RC^W?_ ,&XG[/O[>G[5'Q,_:L\=?M"?&3P
M1XH^)L?@N/4O"_A/2/!4_AW3AX*\!>%_ -G]C?5M,N+Z07MCX7MKZ[$\S#[5
M=3HF(PM?KA^R'^SKX!_X)^_LE?#G]GBP\>7FL?#WX%>&?$GF?$+Q_=:/HEP-
M$N/$'B/QIJ6K>)[T26FC:?;:5#J=Z;F_>2VLX-.T]KF8PK&X !P7_!3W]D2Q
M_;D_8A^/G[.<D$+>(?%?@RYU?X?7TL*3/I'Q,\(S1^)? =];;^87FUW38M,O
M)X#YQTG4-1M\.L^VO\DBUU[Q]\.7\?>$;+5]?\'W'B;1Y_AU\2-$MKB[TR;4
M](T[Q;X=\57WA36XE^SW1L[?QCX*\+ZO-;,(&&L>&M*O/];86Y3_ %^?%7[?
M?[$?@OP]K'BKQ%^UQ^S79:%H&G7.J:K=Q?&[X=:A+!:6J;G:&PTWQ!=W]Y,Q
MPD5M:6TUS/(RQ6\,TK+&?\I#]OWXM_"SX_\ [;'[2_QC^!?A^\T#X7_%#XO>
M+_%_A#2[Z-+;4;J#6-2EN;_7IK!(T72$\6:J;[Q5%H;CSM#CUD:;(SB!&(<]
M?>/H_P T?T3?\&FW[(?_  GO[07QA_;&\3:1%<Z!\#?"T7P\^'T]T@=1\3_B
M#$[Z_?V0WG,WAWP'9WUA-*86Q'XZLWA8212JW^@)7Y"_\$./V0+S]B[_ ()W
M?!GX=^)=)O=%^)/CRQ;XT_%33=2A>UU#3?&/Q&@M[ZVT*^LBS)87OA7P?9^%
MO"=]9CRY4OM#N9I[>VDG\A/UZH.@_#3_ (.,OA)XX^+_ /P2A^/NG> -#N_$
M6K>"=4^'WQ.U72[!'DO1X1\$^+],U'Q?JEO D4CW*Z!X?>^U^]@CVR_V9IE_
M<1[S;F*3_/:_X)I?M[^)O^"<'[5WA/\ :7\,^"]'^(D>FZ#XB\(^)O!NKZG-
MHJZUX6\4V\,-_#8:];VE_+HNJ6MU9V6I65_)I][:.]A)8WEJ\%X[1_Z\M]90
M:A;36=U%#<6MQ%)!<6]Q"EQ!<0RKLD@N()0T4]M+&62>"1629&VM\H(/\R?[
M0O\ P:J?L$?&+X@:QX]^'OC[XS? "'Q#J-]JNJ^!O!%[X8U[P-9WU_-]HF/A
M:Q\5Z)J&N^'+&6=IIGT5/$-]H5H\@30],T6W$EO* <O^PM_P<P1_MS_M3_"'
M]ECP%^P[XCT'6/B;K=Y87GBF;X[Z9KEGX0\.:#HVH^(?$_BB_P!-C^%>EM?V
MVAZ%I%]>-9IJ-G)>3)#:0SK-/'G\H_\ @[Z.[]JS]DTD8)_9[\0D@]1N^(FI
MX!_$,/?!]#7]"_\ P37_ ."!G[/W_!-;X[ZU^T#X&^+_ ,2?BGXOO_A[K7P\
MT>U\>:+X.M;'PW8^(-6T#4M5U73Y-$TRVO)-7GAT'^S$GEG"P6.JZM'"B&_N
M3+UW_!3_ /X(A?!O_@J/\2_AM\3/B;\:/B;\--0^&G@:^\#:;IO@+3?#%S9Z
MC9W^OW7B"6^OI-?M+V5;M;B[> "W\M'B1&E,D@W4 ?DG_P &>Q'_  I;]M;D
M?\E.^$OZ>%_& /Y$@'T)&:_LBK\I_P#@EK_P2A^&'_!*[PM\7?"GPR^*7C[X
MGV?Q>\1^&/$FJ7/CZST&UN=&N?#.D:AI$-OIAT*VM(W@O(KXS3_:4=XWB5(F
M6(A$_5B@#_.]_P"#N<C_ (>&? L9&?\ AC+P,V,\[?\ A=WQ_7=CKMW$+GID
M@=37[9_\&FZ&3_@G!\2U4XW?M6?$,9^4CCX=_!TD88$'(X(X)!X920P^OO\
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
M%><>F%%%% !1110 4444 %%%% !7XB_\%X_A]^W7\<?V.S^SQ^PG\+=>\?\
MBCXR^)K?1?BWJ^B^._A_X%_X1_X2Z=:7<^KZ#-=^.O&G@Q[U_'NK76D:3<P:
M+<:@#X9L/%-KK=G)I]^D-Q^W5% '^6'#_P &[?\ P6*FN(8'_8]NK5)98XWN
M[OXV?LZ+:VR2-M:XN#;?%RZN?(@ ,DWV>VN)@@_=0RR,J'^AW_@CY_P;9^)?
MV=OB]X:_::_;PU'P'XC\4^ K^S\0_"[X'>$-0E\5Z%H_B[39XKG1O&7Q$U^:
MST[2]7U3PQ?1F_\ #OAG1(=<T&VU5=,U^[UZYE@&E1_V/T4 %%%% !1110 4
:444 %%%% !1110 4444 %%%% !1110!__]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>9
<FILENAME>audit_002.jpg
<TEXT>
begin 644 audit_002.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  $! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_
MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P  1" "G _8# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#^_BBBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** &[TR1O7(ZC<,CG'
M//'/'UXIP(/0Y^E?#/[:/[1?C;]GK6?V-K'P;IOAK4[;]H3]MGX6?LZ>-4\1
M6>J7+V7@OQYX'^*6OZIJ7AYM,UC2EM?$=I?>"=,-A=ZA'JFGK%-=)<Z;<!D*
M?<<:A8U4'<%& QQEL'&3C YZX4!1T4 8  'T444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !2,RJ"S$*H&
M2S$  #J23P![FEJ*9=R $D?O(CD'!XE0X^AQA@,$J2 0>0 .62-L!9$8DD#:
MZG) R0,'D@<D>G/2GU\H_LP_%WQ3\6]5_:3M/%$.D0Q_!S]IGQ[\&?"[:7:W
M5O)=>%O#GA7X?ZWI]WK#W5]>FYUM[KQ/J$=Y=6PL[2X@CM +&.:%YI?JZ@ H
MHHH **** "BBB@ HHR,XSSUQWP<X/XX/Y&B@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH *:9$499T49(R6 &0"2,D]0%)([ $]
M:=7Q+^T1^T!XT^%?[3?["GP>\.V/AVY\-_M-?$[XR^#O'FH:M::G/KFEZ/\
M#O\ 9W^(OQ:T;_A%;FRUC3[&QNKKQ)X1TZWU&;5=.UE)--EG@MX;:8I.H!]M
M @]#GZ44R,80#.<9]/4\< #CIT[<\T^@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH _*#_@J+_R,_P#P2^_[2K_L\?\ JJ/VAJ_5R/\ U<?^
MXO\ Z"*_*/\ X*B_\C/_ ,$OO^TJ_P"SQ_ZJC]H:OU<C_P!7'_N+_P"@B@!L
M\ABB>0 -L&X@[N0"-P 178G&=H5&8G "L2 ?SU_9P_;XMOCM^TQ^U5^R]KOP
MQNOAIX[_ &9]>T^VB6_\2KK<GC_PEJM_J,%CXSL;(:'HSZ/82Z<WA35C;F?5
ME$'BVQ1+QXXX+F__ $*F4O&R@X)VY.,\!@6&,CJH(SVSG!Q@_P MO_!5?QKK
M7[!'[<ME^USX>M[RVT7]IO\ 9$^,WP1UN\TJ&\A5?B[X<\*RIX$U/4BCW>GO
M)+?R_#<69N]-N3';Z/K,QD$<1FT_[3@;(L'Q3F.:\.5%R9KCLAQ.(X<Q4JT:
M-&CFV7XW 8JM1K*<X4ZKQF4QS*E0A-_Q8>Y>K*FC\_\ $#B#,.%,'DW$5"3G
ME&7Y[AZ/$F$C2=6IB<JS'!X[!T:M-PA4JTXX#-)8#$UW3BI2I2W]G"H?LI^Q
M'^W;;_MLK\=?$/A?X9W7A/X;?"?XNZU\*/"?C>^\3V^L?\+,ET!9+K4=?L])
MM=(LUT.Q33+G0;R!?[2UFWGDU=[3[?'/82";YS^ _P#P6%^'WQT_;8\1?L@Z
M?\+=6\/Z7!KWQ3\)> OC-?>)TN?#?Q,\5_":XC77])\.Z3_PCMI$1-80ZIJL
M$\7B*^9+.VTXM"YUJT*>7_"V8_\ !,S_ ((I0>)-6>+1/B%HGP4U+Q?+'/;0
M6=_+\:/C)<SW'AC2M0\F*VCGN=%\0^*M"\/W4Q$CVVE: HB::W@BV_A5JG@[
M]J_]F']E#]@_]H;Q!^RE/X'\*_LS?%W3OCU>_M :=\6_ ?B3Q5\2]!^.OB+0
MM>N=$\0?#FQTZT\6>'6\0:6GAKPU=&ZUZ\:%4>SU".&/4G_L_P#1\DX#X8S[
M'<7K#4Z=+ 5LWQ/"'!-7%9[0R^<\TR[ 8JM6S=4\14YLWGBL5A,+06!PS;A/
M-DE2C&@G'\QSSQ!XKR# \&1Q>)JSS".4T>+^-(8;(J^80CE>99C1I8;*?:8:
ME*.51PN#Q-:L\7BE3C..7\SK-U5S?T;_ /!0;_@K5X5_X)]_%?X/?#OQE\(M
M7\;Z+\3]'/B#5/%>B^*K33+KPEI%OXDBT/498_#EUHUT=?N+6S-QJD<"ZSI(
MN6ACL4D62X69/>/C)^WWX7^&7Q(_8G\%>&_"UM\1O#O[:?BC4M$\+^.]'\41
M6>F>'M)M=(\*:UI_B*.S72-1_P"$BM=5L_%4#PP0WVEF-;<EIF,P6/\ )O\
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
MB[U=]*@OQIEW9ZO'K.BZE)HT)N$\W2[F&'5-.U2WM?1OVI/^"I7@#]E/X'?
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
MXR\\ ^%=0@L[6_T#0+RUTV$V^G6]SHFGS16$!"@P6D<D3+! 0D>Z*(("4!R
M %T-,\+Z1HMN;32-/TO2[0LTC6VF:9;:= TT@"R2O%9^2CR/&JH793+M4 2
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
M\0?&/C"RU#PU="[FU;0=-C2]FBT33X+8 _H*\9_&OX1_#G6=!\.^/_B;\/?
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
M'PI\8VW[67BSPS\/K/PR_BK3/'NL?#.[.KZQX9^)6MZC\3OVCM*E\1:E\?/
M]QI7A>PTZ'P+X,EF^)=UJUU;:=IX!_6!#+'/%'-$Z21RHKH\;JZ,K#(*NA96
M'NI(/8FL#3O%_AC5_$'B#PKI7B#0]3\1^$CI@\5:%I^L:=>ZSX:.MV;:AHJZ
M_I5M<2W^COK%BC7VEKJ,%M]OL5:ZM3)$I-? G_!.;XE?#;3O^"7?[)/CK3O'
M>IZ[\./ /[*?P\M]:\?^,M-E\-ZI'9?"KP5;>'O&FH^*--NM=\3/I5WHM]X5
MUV'5H8_$WB.WC?3KC[#XBUFW:UU.[_$__@FM^T/I&C?MO^#OV@]4M/B_HVH_
M\%<HOBQ>?&"P\<?!']H;X=>#? WQ0\&Z]X@^(W[%&@Z/X[^*/PV\/^ /$5]=
M_LC)XG^'5Y>^ ?$L]OK&L>&=#U2"TU*"[76@ ?UG45^)O@[]OKXTZMJ/@+X!
MZO:>"6_:B\+?MD?'7X0?M$V</AC63IEC^S9^SMHK?&W7_C+X/\.'Q=:ZKI,_
MQ9^ WC[]F73?"]YJFM:SH_AGQ]\?] M+C3M9M-(8-Y9^P9_P43_;(_:G\??L
MQ_$74?A)K6H_L\?M41>-->U'2+3]EKXV?#;2_P!G/P!J'@;Q)\0/@]XU?]IK
MQ/XJU_X9_'6'6T\.:'X!\5VNC^#_  '!<>+OB'INK>!KN[T+1M2LM2 /Z!:*
M8A)7)ZYYXP?49[9Q@''&<@$@9I] !1110 4444 %%%% !1110 4444 %?EE^
MVE_R?I_P2+_[+W^T_P#^L4?&ROU-K\LOVTO^3]/^"1?_ &7O]I__ -8H^-E
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
MTQ+G2+F>RCGTF_TZ]LT=9+*[@>-<^@QZC:N =Y3(#?/@84QB3<2I8 %22I)
M<*[Q[XT9PKW]O&%W%]S$#RU0M*I8[5W1+EP&;@$*5(R^?+5W4 \'_:&_9;^"
M?[4NG_"O2_C;X./C*P^"_P ;/AW^T3\.;=?$7BCPW_8/Q?\ A3?7.H^ O%3S
M>%M8T>75HM#O+V[F?0-9.H>'M5\T1:KIEW$BH/GOQG_P3,_9E\=_$#Q7XTUN
MT^)MMX<^(?C32_BA\4?@?X;^,OQ,\*?L\_%;XIZ+?:9J5CX_^(GP;\/>(;#P
MEX@UNZO]&TG4/%ENUM#X=^).I:=IVI?$[P_XRO\ 2].N;?\ 0&X+* RE\@/P
MFW+' 8+MD(C))4 ;BAYQYB*7)_+C]E?_ (*Q?!+]I[QI\)_!2_![]J7X&W7[
M0OA/5/&/[.>O_'_X4:?X6\&_'[1=!\-+XVUI_A?XK\)>,O'FCW][IG@F3_A,
M9M-\03>'-5N/#OGW=I;7W]F7ZV8!]:7G[(?P"U/XX>+?VB-6^&^AZS\5/'WP
M<3X ^-M<UJZUC6-(\1_"1=5EU>?P;J/@?4K^Y\"R6FI7,BQ:S?Q^'8=6UC38
M+;1]3OKO3K:WAA\;F_X)G_LH0?LW_"?]E[PIX.\3?#GX?? ;Q;=?$3X'ZW\/
M?B;\1O#OQ/\ A)\1[_5/&.M:CX^\&?%5/$MQX]C\3ZKJ/Q!\;MKU[K6N:Q!X
MGL_%>NZ7XGM-8TK4KRQGY<?\%(O!WB75_$\GP1_9S_:X_:0^''@WQO/\._%/
MQP^"WPQ\+:I\*[/Q9H_BN?PEXLL_#(\<?$CP%\0/BGI_@C6K6^MO%?B#X.>
M?B#X9M)+#4K*SUO49=+OH[;Z=^-_[1W@SX"7'P/M_'.G^*Y[+XZ?&GPC\!M!
MUW0+#3;C1O#?C;QSI&O7_A&Y\<75]JVE7.BZ!K^KZ /"5C?Z7:ZS>2>*==\.
MZ6VF"#49;ZS .H^$/P=TWX-^!;+P-I'B?X@^,XK>XO\ 4+_Q-\5/B-XR^)WC
MG7=6U29KC4-1U;QCXTU/6=6(DE9(].T;3S8>&?#6GVUEH_A70]$T?3["PM?F
M.S_X)P_ @?&6#XR^)/%'[0_Q"?2_B"?BUX5^$OQ+_:;^.7Q"^ '@;XH+K5UX
MCM/&_A#X-^+O&>K^$-/U+1M=O;C5?"6EW=I?^%_ &H?9[[P#H'AJ[LK6:+U;
MQ]^U7\-/A[\</#GP(UZ?6D\2:O\ !3XG_M >*?% .AV'P]^%WPF^%VI>&=%U
M'Q3\2O$>LZ]HQ\-0>(-<\51:7X4:RT_5I=0;0O%5YJ+Z1I?AO5-0M>-^!7[:
MGA?XZPZCXPT3X1_'7P9\"%\$:Q\1/"'[2?Q2T+P3X+^#OQ(\$://9F+Q/X22
M]^(MS\4=.T/7-$OY/%_AK6?B+\,_ ^FZ_P"#-.NO$.G:E?6AL'N@#N/@S^R7
M\,?@'\4_C1\3OAG<^-M$'QX\6:G\0_''@&7Q[XHU#X66_P 1O$EQ%>>-_'WA
M;X=7M[+X=\->*_'^H6ECJ7B_5+&)C?7UO-<V4&GSZMX@FUCZBK\^?A/^WYH_
MQP\1^"I/AK^S1^UQK'P5^).OG2/!7[3]Q\-O"&D_!;7M-FT:\U?2?'$&E:U\
M1[/XYZ9\./$<%E';>&_'^L?!;3/"&LR:AH^H:=J5YINNZ9J=U[[\>/CCJ/P4
MT;P_=Z+\%OCA\>/$'BG7FT;2/!?P/\.>'M9UQ3;Z9>ZQ?ZQK>O\ CSQE\//A
MOX1T"RMK$P_;?%WCK0(]7U"ZL=%\.6FK:Q>0V4@!]$T5^9/BC_@IY\+='^!W
MP,^.'A#X,?M1_%R3X^?%_P"(/P(\)?!OX<?"S3!\<=%^*/PGLOC'=_%/PIXV
M\ ^/?&?@==$O_AS>? ;XF:-XJ:VUK44AU7P_MTDZEI5];:A)W7P\_;Z\&?%C
MX.^+_B;\+?@U^TAXZ\9_#SXEVWPA^(7[-\'@#0?"'[0W@3XAO9^'=6N?#OC#
MPO\ $SQIX+\(>'4L?#'B;0O%C^(-2\>VWA:^\-:E9ZKINMWYOXT !]^45\Z_
MLQ_M*^#/VH_AQ<?$'PEH7CKP;<Z-XS\7_#GQGX ^)_AM/"GQ#\ >/_ >KSZ)
MXI\)>+-&MM0UC2A?Z?=P"YMM2\/:YK_AO6=)N]/U71-<U&RO(IC]%4 %%%%
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
M7_)^G_!(O_LO?[3_ /ZQ1\;* /U+7H?]Y_\ T-J;,A>-E7&25(W$@':P8@D
MD9 QD XSG!Z4Y>A_WG_]#:AR0C$=0,]=N<<D9PV,CN 2.W.#0!^=C_\ !+G]
MEB+QW\5?B5X>NOVE_AQXL^-OQ U/XI_%(_!W]N#]M'X.>'_%_P 0=7M[:SO_
M !3?^#_AA\>O"?@^+4Y["QL;#S+'P_:1QV-G:V4,4=K;00IT/Q#_ ."<G[-O
MQ1^+NI?%OQ=I'C6YD\4W_@+6_B?\.K+XI?$+3_@_\;_$_P +(]"@^&?BOXX?
M"RWU[_A#_B=XC\!VOAK0;'1M2\2:=<_VMIVB>'].\:P>+++PMX2AT#.^%O\
MP4@_9S^+?[;?[0?[ FAW_C'0_P!H3]G:TT&_UZP\5Z)8:3X4\<V.K>$_"/C.
M_D^&&N6^N:DWB:Y\+:/X]\*OXJT[4].\/ZK8C6!>6%EJNE:7>:C;_3?PH^-O
MA#XM7'Q.M/#46NP-\)?B[XI^#7B5]9MK6%;CQ;X3L]'O]4ETM[34+\W.C20Z
M[8M8W%W]ANY2S1OIT $:N 1?%;]GSX8_&^[^$UW\3_#H\2-\$/B_X8^.WPT1
M-9U_1D\/?%'P;I?B#1/#GB61=$U+3H];73]*\4:W;#1-<BU#0;C[8TE[I]W<
M1V\\'MHC11M5$"\\!0!SUX QSWJN+R @'?C<6"!L*795WLJJQ#95<$Y !5E<
M$H=U-%_:E/,$AV?,0Y4JI"_>*LX4.%) ;:258[& <%0 >=^/?A!X%^(_B7X2
M^+_%6B)J>O\ P.\=ZE\2_AC?'4=8L/\ A&O&VK?#CQ_\)K_6OLNF:A:6.L"X
M\!?$[QIH9T[7+74=-0ZN-32U&IZ?IMU:?'WQ(_X)A_LP?%+XJ:Y\4?$5I\4-
M.L_'7B;2O''QA^#?A3XU_%+PK^SS\=_&VA0Z':Z+XI^-7P2T7Q+:> /'^L6=
MIX8\/6VHRZCHL=IXRMM)T^S\?V/BNPT[3;6T^R?&WC;5O#-WX(AT/P-XJ\=0
M^*?&6G>&M;N?"\_A2"W\!:%>:5K&I7'C_P 4CQ/XE\.W-YX7L+C3M/TFYLO"
M$'B;QC)?Z[I4]AX5U+2UU6YL>^-Y"%+Y8J.N!EL;BJD(#O;>0VP*I9RC*H+[
M48 ^$]=_X)Q?L\Z]XU^('C^/Q!^U%X)UWXG^+;CQUXULOA%^W+^VK\&?".K^
M+;S2-(T*\UY? ?PJ^/G@[P/INHWFEZ%I-I=S:3X=L/M,5C!YRN4!$WQ6_P""
M>WP6^-_C;3/%'Q8\3?'?Q]X2TZ7P!J<OP+\2?M#?&"^_9^UOQ1\,+C3KWP9X
MK\3_  KE\4OHWB:_LK_2M/U+5M%UR:_\(>+=:M8/$OC/PYXC\3I_;!^X3J5L
M!G,AP7!VQLP&S(;YERIVL I"L2I92P"[F6W'*DA(0Y*@$^V[(&",JW*L"5)
M8%<Y!  /,_C/\(? _P ?/A;X_P#@Q\3-*FUWX<_%'P?XA\!>.=#M=9UOPY=:
MOX6\4Z;-I&LV%OK_ (:U#2]?TB2?3[JXCCO='U"PU&WE:.:TOK66(.?F'PK_
M ,$X/V3_  VOQ8;5? OBSXJ:A\;?AL?@U\2_$'[0?QN^.7[2OBKQ'\)))+FX
MN/AM'XK^/_Q"^)'B70?!5W?WEUJEWX;\/:MINCW.KRIJEQ9RWMK936WL_P"U
M3^T9X5_9/^!OC#X\>-/#?CKQAH'@R?PK9R>%/AGI.FZ[X[\1ZKXU\9>'OA_X
M<T7PSI&L:YX;TR_U/4/$7BO2X(H+S6["(*7E\[=& ?GSX2_\%)?@%XY\&?'3
MQ9\2-)^+/[+M]^S1X:T;QM\=/ _[4?@27X:>-O '@?Q+:^(+_P ,>-KBSL-4
M\4:#X@\+>)+7PQX@&BZGX.\1>)?M6HZ7=^'F2/7K8:8P!V/P)_8*^"7P$\;1
M?$K2]1^*_P 4/B#I&@WW@SP+XT^/WQB^(/QP\1?"KX>7\\5Q<_#[X8ZA\1-9
MUR7PIX>NWM[8:WJ%NTWC+Q=#9:5:^,_%?B&UT31HK''7_@FM^QQ'X$N_AJOP
M;TZ3P5>?M/M^V'/H5SXI\=7<+_'V35H]5G\6F[N?$LNH#2;LI)I=[X"6Z7P#
M?>&KS4?!]WX<G\)ZC?:-<6O@I^V?JWQK\6>&-$@_9%_;&^%_@[QI9:]?^%?B
MQ\8OAQX&\'>#+R#1;8WUJNN>'H_BGJ_QF^'\_B.R6.?0+;XH?"KP;>W<DJ6T
MMM!+*4C]9L_VD_ @_:<NOV4K^W\3:7\1S\$+?X_:#>:I96">%/%O@1/&G_"!
M^(?^$9U9-6N-3O=;\%Z[=^&H?%FEWFD6":;;>,_"=U;7>H_VPZV8!Y%\7?\
M@G]\(_B[\2]:^+'_  F7QY^$?B[QIH&D^%OBI)^S[\>_B?\ !/3OC'X?\/*]
MKX=M/B18^ ]=TE+_ %C0M)DFT/2/'>@2>'?B/IF@W!T&Q\80:/:6-G![)=_L
MQ_">]N/C7=7/AMYKC]H?P+H'PU^+DTOB/Q6TOBKP1X9\.>(_".B:'O368FT8
MV'A_Q;X@L%U;0#I6M7/V_P"U7^H76HV]K?0?-/C[_@IK^SYX%\6?$?P/%9_$
M?QGXY\&_'O0?V7?"?@OP1X<TG6]?^-WQ_P!5^&_A_P"*^K_#'X,VUQXETZPU
M+4OAYX,\5:+JGQ6\3^.+[P-X$^'R-JA\2>*["WT+59K*.Z_X*<_ [3?A=>>-
M-7\$_&S1?B/9?M!Q?LJ2?LR7W@K1KC]HBY_:*O?"P^(6E?";3M#TSQ7J'P[O
MM8UCX8RV_P 4M*\4VOQ(G^&MS\/)D\3GQLMC'<M  ?9V@?!SP%X7^"^A? '0
MM#^P?"[PW\-=,^$>C>&1JVN7'V+X?Z/X8A\':;X>&NW6HS>)+A;?PY;PZ6VJ
MW.JR:W/&K7<VH&^=KFO.-3_9(^"&KQ?L[I>>#LS?LK%8O@=>VWB7Q;87_A#2
MW^'=[\*]1\/W%]8:U;7GBOPOK_@>^;1_$OA3QG<>(?#GB1[/1]3U[3-2U;1-
M*O;7JO@7\6M;^,/AS5=?\0?!GXQ_ G4])\27_AVY\$_&NR\ VGB68V5CIVH1
MZ[I5Q\-?'WQ+\)ZOX8OTU<VECJEEXJGG;4-,U"QO+2UN+*1#YC>_MG_!0?M8
M:/\ L;:?J'BW6/C+>Z+X@U[5HM*\'^)E\$>$!H/A;PUXQ71?$_Q!O+&S\'_\
M)7J_AOQ3H>OZ7X/T34]?\0IHUY!J^NZ7HNE7MA=:J >&_#O_ ().?LB?#/Q3
M\*_$FBZ/\4=6LO@!XZF^(/[.7@CQ7\=?B]XC^&_[/.KW&F:QI5UIGPC\!:EX
MLE\.^'_#%Y;:]JL3>'KZTU:QTZTN+73-%73=(T;0M.TW]+(H_*0)N+!2V"3D
MX+%@#P/N@[1Z@ \9P/%OA7\:O#7Q@U+XQ:5X8@URWNO@G\7M4^"_BY]5MK6S
MBN?%>B>$_!?C:YGT,VU]>_:M$;2/'&DJE[=)97DMTEY:R:?Y4,4DGRGXG_X*
M>_LR>!_V0[;]LGQ5<?$FQ^'.JW/Q4T_PWX7L/A]J?BKXI>)M7^#^J_$#2_%>
MEZ/X0\&S^)(#)';_  P\5^(#JVI:QIWAG2?#-F_B/Q=K?AK2+?4KFP /T9HK
M \+ZW;>)/#VC>(+(7*V>MZ7I^KV:WB+'=):ZI907]NDZ+),J31Q7*1RH)YS%
M(KQ--*Z,Y* -^BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
M268L"!C)8G<3@D$DDMDYSDT ?RR>,OA=^T7_ ,%%/^">'_!43]J72?@M\0_
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
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** /R@_X*B_\C/\
M\$OO^TJ_[/'_ *JC]H:OU<C_ -7'_N+_ .@BORC_ ."HO_(S_P#!+[_M*O\
ML\?^JH_:&K]7(_\ 5Q_[B_\ H(H )"X0^6"S94 #;G!8 GYV5<*I+'G. =H+
M8!_&[]IWXR?\% OAO^VM^RE^SW\/?CQ^S)I/@3]KW7/VBET&?Q7^R5X]\7^)
MOA9I/P1^%UM\1[*ROM7TS]KKP7IWQ O=9-PVDW6JKH7@>&U"+?Q:1<?-9G]E
M*_/;]H_]G7XF?$[]N3_@GA\>/#%EI,OP]_9IOOVK9_B9=7FK1V>J0Q_&#X(V
MG@?P;_8^G-&TNI^=XAMY+?4V@8-IMH8[P^8&*Q@'U-\*OB%JOBRW\3^'O$&B
M^+[#Q/\ #GQ!#X$\0>)]?^'VH?#_ ,+?$76[#POX8UK5O'?PPTW4=9U^>\^'
MFH7?B'[#IETVMZD;;5=.U[0UU'5FT"ZU2;\H[K_@H#=_$']L#Q;\,9/VT/@%
M^RMX*^&'[0>B_ ;P1\)/%W@S1_%_Q)_:9\4:+K/A/3OB)+X@\0^)_%'AV+X?
M:%K_ (IU#Q1\%OA'H/AC3;#Q3J/C+PSJ7C]_$'B[0+K1_!D_ZR^ ]7^)^K:G
M\1[?Q[\/-(\%:=H'CV?1OAMJVD^-H?%L_P 1_ *^'/#^H6_CK6-/30]%/@/5
M9O$^I^*?#K^#KN[\520VGA^RUT^(&CUU;.R_%OXD_L&_M07L'[8?[,'A3X5?
M!W6_@C^V'^V/X;_:MB_:;U'XB76B>+?A@E_XG^$_C3QM#XC^%MIX876O$WQ2
M\ ZI\,+FT^!FKZ!XK7PQJ@N_!,OCW4/#</AW7D\0 &_\6OVL?VZ(?A'^U1^W
M9\.?&GPR\/? ;]DSXW?'/PE:_LV^)/AGINKW/QH^"G[(_P 2_$WPF_:'\8:M
M\8+?QW#XA\(?$;Q%XG\ _$C4?A-_9V@6/AOP_H_AO08/%7@_QG/XE>^T_P"C
M/VH/VZ_'7@3]I;]G[X!? ;3O!?BVQ'QN^"7AW]KOQAX@^V:E9?#/P1\<M7N/
M#GPZ^'WAR+1+JSCA^,OCR29OB#9?VQ<R:;X4^&/A6ZU76M'O)_'O@>>?YX\=
M_LK_ +<5W\+?VLOV%/#/@/X8:S^SU^U+\</CQXMTW]I76/B9%IFN_#/X(_M>
M?%/7_B]\??"&J?"!? 5[J7B;XG^%M:^('Q8T3X821^(G\(:UI^L^![OQ+XL\
M./I&IZ:VG\7/^"6_QMCO;6^^"7[:O[1]E%XO_;@\)_M3>/\ P_K^A_LBZCI^
M@7#^*;2[U77?#?B/Q%^S!J7C;7KCX=>$M*\.^%/ASX;\9>)_$FD0^&_#.A>'
M]1TK4+2PM1; 'WE^WU^UE;?L;?LT>+?C/!%HEWXGFUKP/\-_AO9>+);K3_!<
M_P 3OBKXQT7P!X&G\<:Q;^3-HG@72M>\06FL^.-8%S;OIWA;3M6GMY8[Q(67
MX%U#]NOQIX+_ &*?VHOCY\,_VVO@%^V7XK^$VK_#.7Q7XKT+X2VGASP=^S)X
M<\4^*?">E_%SQWXM\ ^!O'5]XQ\7?#SX3?#36/$GQS\.^$[_ %.'QWXE\.^#
M-1T-/'/BJ36+&^T[[,_X*)?LG^*?VNOV8M0^%WA*^T:3QWX2^(7P>^-?@&T\
M974NG>#?%OC;X$_$WPM\4M!\&^/KW3="UJ^L?"/C>Z\*+X6\0:GHVAZC=:5;
M:H=>L-(NWTZ'1KO\[?CS^PW^U_\ M3W7[0?Q_P!;^$'P<^$_C?QWKG_!/J>V
M_9CUCXD-XCT_X_>$_P!A_P",_C[XU^*_!_QX^*OACPU>^&[;3_C(OQ#D^&WA
MV >"_'6F^&=)\$^&]5\0V=Q::E?:3I8![%^QI^TI^U7^U?H?[2OA#X2_M5?
M?XH>'?@O\6?A]X9^%?[:Y_9YG\4>#/BYH_B#X<P>(_B1X$U7X6^#?C1\,M'G
M\8_"_P 7:QI&CW'C[PAXMT_PM>6MY:Z%)X5F\2:'XGN7]^_8@^+G[6?Q9^*O
M[4]G\5/B?\$_BK\%_@G\0+'X&>"?%WPW^ _B?X+ZSXK^,'A338+_ .-TZV^O
M?'WXT6=[X,^'VL:MI'PXMYEDTW4=5^(6@?$JW<:?I?A_19M8P?V6_@9^T=X=
M^//[9/[5/C3X3_#KX%:E\=? /P7\*^ O@)X>\;:9X[75_&'P6TKXF)+\5_BG
MXIT#PKX>T?3?%/C23QQH7@BSLO#.MZ[;67@3P5HVH:Y=C7;B:RT[Z._8%^ O
MBO\ 9H_9+^#/PA^(5]:ZO\4-)\-3^*/C'KMBT<MEXB^.'Q)US6/B3\:O$-G<
M0PVR75GK?Q/\6^*=2LIS!'*UC<VT<VZ2-C0!XK^U9\<OVN?A/^TS^QEX8\(6
MGP;T;]FSXS?M$^%O@UXWUK4I_$'B/XR>+=4UWX3?'/XBWVE:%HXTG3/!_P /
M_#FAGX6:/&WB"XU;QCKWBJ?7KC3[?3O!5OI#:QJW"?\ !1/XI_MD?LZ_#OXI
M_M.?#/X]?!_PGX+^$7A_1YOAU^SUXA^#R>+]4_:,\>W]Q;V,'PSUWQY>^._#
M&M:?XO\ B5X@NK;P'\']$^&NG:=>V?BJ]TC4-=E\;KJ<OA+3/J#]K7X*^._B
M]XP_8KUOP7;Z=/9? O\ ;"\/?&SQV]_?QV<MOX+TOX&_'KP!<S:9!("=3U'^
MW?B)H$::?&T<C6SW5TKD6IBD^*_CC\/OVRO$7[;&K_%+7/V1[3]I;X'?!FZ\
M ZQ^R!H<O[3_ ('^&GA?P?\ $"'P5J<'Q#^,WB7X=:KX7N+K6/BI_:WB_6?
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
MQC'X@_9EO=0\":EXB^'OB37?"^KVGPGF3QMX,\NST73/C)I>C^,+8ZQX9O\
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
MZTM0V\JS6\$RNDBRPQ2J\3B2-UD17#QN"0Z,#E'!(92""<U-0 4444 %%%%
M!1110 4444 %%%% !1110 4R3[H_WX__ $8M/IDGW1_OQ_\ HQ: /@+]A#_D
M/_MV?]GZ?%S_ -5Y\':_0"OS_P#V$/\ D/\ [=G_ &?I\7/_ %7GP=K] * &
MLRHK.[!54%F9CA54<DDG@ #DD\ <FFB6,D*&^8D  AE.2@<## ')0[L=<*YQ
M\C[?@7_@JQ<RV?\ P31_;RNX(K^>:V_9/^.<T4&ESFUU*:2/X?:ZR16-RMQ:
M&"[D8!()?M=J$D96:YMU!F3Y5_8@\!V?@3X:_$FV_8A_X)\^-?\ @GUXGU7X
MH_!RZ\9:)^V9:VT^@_$?P=:Z](WCO6/"-M\(?CY\8+R3Q%H?@0>*=/\ "TVK
M:EX;T]/&.L>&[O5].UC1OMCVH!^TK2QH<.X7 W'=P #GG)X_A/?/'N*Q]/\
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
M._8B_8]^%/[!O[+WPG_91^"\>K?\*_\ A-X?FTFRU'7)H9M>\1:OJNIW^O\
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
MX>_:13]I^[^*TFE_M':)\9O!_A.'X?\ @_Q5X7\8>&="T+PMX8T_PS\/X?\
MA!]/\#Z'X'L?A]=>'+C4K;6?"NJW6L:O>7WT5^S?^Q]\/OV;-=^+'CK3/&'Q
M1^*_Q9^.6J>&+_XI?&'XS^)]-\3^/O$]EX&TBXT/P)X8C.@>'_"7A/PYX/\
M!>GWVK?\(]X9\*>%-"TJVO\ 7=?UBXM[K6-;U._NOJ^B@#XM_:5_8!_9F_:H
MTKX?Z5\1_ UEI@^'/QW^%_[0VEZEX,TGPIH>KZQXX^$_BB/Q=H>G^)]0NO#6
MJRZQX5UG5(]GBO2&$%QK5H[Q#4;64B<<#\9/^"9WP'^-'C#XF^(-3\8_&WP1
MX1^.]IX)LOVA_@S\-/']IX3^$GQZC^'^AZ5X1\/R?$#0QX<O_$%A<3> ] \-
M_#KQ'<?#SQ1X%E\7^ /#/A[PEXJ;6-'TFTMH_P!$** /"+3]G7X=V7[0,_[2
MD)\0#X@GX*:;\ ].L!K,D?@O0? 5CXTU+QY>-H?A6&&*RLM?U_7;O2TUW66>
M>6[TSPGX4TVWBM+?22MQY'\;OV)/"_[0?BO4;[XD_&[]HF]^%?B"\\.77B_]
MFW2_&WA72?@9XT@\.'39%T7Q)86W@/\ X6--X5\07&DVD_C'PAI_Q)TWPMXM
M675;#7=(O=*U_7]/U/[3HH :BA$1 20BJH+8+$* ,L0 ,G&3@ 9Z 4ZBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ IDGW1_OQ_^C%I],D^Z/\ ?C_]&+0!
M\!?L(?\ (?\ V[/^S]/BY_ZKSX.U^@%?G_\ L(?\A_\ ;L_[/T^+G_JO/@[7
MZ 4 >5?'/X.^$OVA/@U\4/@9X\EUB'P5\7/ OB7X>^*IO#U]%IFNQ:#XKTJY
MT?5'TC4)[2^ALM16TNI3:74EG=)!,$D,$@7:;/Q*^&:_$?P_8: GCOXB_#]K
M'Q7X.\4MKWPV\06OAOQ%?1^$/$^F^)G\+WVI7&E:HLGA+Q8=-70/&6D0V\$F
ML>&+S4-)BO+$7;SCTRB@#YZ_:&_9I\!?M*>#-(\)>,M5\:^&=1\)^,O#?Q&^
M'GQ"^'?B+_A%_B)\-/B%X2>?^PO&7@K7VLM1MK35(;2]U31]2LM6TO6?#_B/
MP[K6M>&?$VBZQX?U6]TR;P1_^"<'P0N_@]XO^%NK^,OC9K?BCQO\8M&_:&UW
M]H74OB#"/VA%^.GA63PW#X+^)VC^--/T&PT'P_JW@K0/!OA3P1X:\/:)X0L/
M EI\/]#A\#W7A*\\-7VL:=J7Z 44 ?)OP=_8P^#7PET7Q7:ZG!K/QK\6^/\
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
MVL#Q'\/_  /XLU?1-)\;:5X-\1>*O#%CX@U_PSJ6I7>L3ZG^@E% 'YB>//\
M@E'\!?'MU\6-$F^)_P"TAX5^"'QX^)&J?%?XT_LQ>"OB9I6@? GXD^,?%&H0
MZQ\0I=;TY?!MU\0]-T'XIZW$^M?$OPCX6^(WA_PKXNU.^U>YU#1_^)YK"7TG
MQ!_X)1?LZ?$/Q)\2Y[KQK\>?#'PF^-_CW0?B;\</V9O!WQ%L-'_9[^+?C71F
MTC[?JGBCPC/X6O\ Q)I5GXUA\/Z#;_$3P]X&\8^$/#7CI=*BN/$>CWU_>:I>
M:A^F]% 'YP?$[_@F'\$/B=XK^,>JS?$?X_\ @KX>_M(:UI'B#]H[X!^ /'^B
MZ)\%OCAJUAX>T#P=K-UXOT6]\&ZOXMT,>//!?A7PYX2^(T'PW\:>!+?QKHND
MH-;BN-0OM6O]0_1>TM;>QM;:RM(8[>UM((K:V@B18XH+>!%BAACC0*B1QQJJ
M(JJ%55  XJQ10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110!^4'_!47_D9_P#@E]_VE7_9X_\ 54?M#5^KD?\
MJX_]Q?\ T$5^7O\ P4F\,>*?%7B/_@G!)X8\,>(/$:^$O^"FWP)\7>)VT'2-
M0UA/#WA32/AG\=K+4O$VO/IUM<C1O#UA<ZMI<-]K>I_9=+LYM1L(+B[2:\MT
M?]08B#&A&<;0 2",X&,X/(!QD9[4 24444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !3)/NC_?C_\ 1BT^
MHIVV1E\9VLAQTZ2+U/. .K'!P,D XP0#X$_80_Y#_P"W9_V?I\7/_5>?!VOT
M KX1_8GT/7] U_\ ;1.N:%J^C)XC_;>^*WB#1&U;3;[3/[6\/W7@#X3P66O:
M7]NMX!J6C7=U8WMI;ZG8M/8S7-I<103RM#.(ONZ@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "ORR_
M;2_Y/T_X)%_]E[_:?_\ 6*/C97ZFU^9O[8'ACQ-K/[;G_!*_Q!HWAS7=7T'P
M=\</VDM0\6ZSI6CZGJ.E^%K#4_V/OB]H&F7WB34+.TFLM"L]1U[4].T:PN-4
MN+6*]U*]M[&T::\FBMW /TP7H?\ >?\ ]#:G4R(EHU8C!8;B,A@"WS$!APP!
M. PX8#<."*?0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
F1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% '_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>10
<FILENAME>fsi-20221231.xsd
<DESCRIPTION>XBRL SCHEMA FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" ?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.18a -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
    <!-- Field: Doc-Info; Name: Misc; Value: 96Mps7xRiXgen8uDanwsWaqIubP9z5Z8CekhvWB1bdlKbycnMJE8LybbhMpGMdgL -->
<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/2022" xmlns:us-gaap="http://fasb.org/srt-sup/2022q3" xmlns:srt="http://fasb.org/srt/2022" xmlns:srt-types="http://fasb.org/srt-types/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:FSI="http://flexiblesolutions.com/20221231" elementFormDefault="qualified" targetNamespace="http://flexiblesolutions.com/20221231">
    <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/PropertyPlantEquipment" id="PropertyPlantEquipment">
	  <link:definition>00000012 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT</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/IncomeTaxes" id="IncomeTaxes">
	  <link:definition>00000019 - 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>00000020 - 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>00000021 - 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>00000022 - 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>00000023 - 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>00000024 - 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>00000025 - 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>00000026 - 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>00000027 - 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>00000028 - 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>00000029 - 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>00000030 - 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/PropertyPlantEquipmentTables" id="PropertyPlantEquipmentTables">
	  <link:definition>00000031 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (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>00000032 - 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>00000033 - 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>00000034 - 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>00000035 - 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>00000036 - 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>00000037 - 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>00000038 - 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>00000039 - 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>00000040 - 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>00000041 - 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>00000042 - 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>00000043 - 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>00000044 - 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>00000045 - 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>00000046 - 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>00000047 - 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>00000048 - 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/ScheduleOfInventoryDetails" id="ScheduleOfInventoryDetails">
	  <link:definition>00000049 - Disclosure - SCHEDULE OF INVENTORY (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>00000050 - 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/PropertyPlantEquipmentDetailsNarrative" id="PropertyPlantEquipmentDetailsNarrative">
	  <link:definition>00000051 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (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>00000052 - 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/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" id="ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails">
	  <link:definition>00000053 - 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/ScheduleOfEstimatedFutureAmortizationExpenseDetails" id="ScheduleOfEstimatedFutureAmortizationExpenseDetails">
	  <link:definition>00000054 - 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/PatentsDetailsNarrative" id="PatentsDetailsNarrative">
	  <link:definition>00000055 - 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/ScheduleOfLongTermDepositsDetails" id="ScheduleOfLongTermDepositsDetails">
	  <link:definition>00000056 - 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/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" id="ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails">
	  <link:definition>00000057 - Disclosure - SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (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>00000058 - 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>00000059 - 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/InvestmentsDetailsNarrative" id="InvestmentsDetailsNarrative">
	  <link:definition>00000060 - 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>00000061 - 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/ScheduleOfLoanCovenantsDetails" id="ScheduleOfLoanCovenantsDetails">
	  <link:definition>00000062 - 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>00000063 - 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>00000064 - 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/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" id="ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails">
	  <link:definition>00000065 - 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>00000066 - 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>00000067 - 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>00000068 - 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>00000069 - 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>00000070 - 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>00000071 - 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>00000072 - 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>00000073 - 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>00000074 - 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>00000075 - 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>00000076 - 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>00000077 - 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>00000078 - 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>00000079 - 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>00000080 - 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-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" id="ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails">
	  <link:definition>00000081 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (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>00000082 - 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>00000083 - 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-20221231_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-20221231_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-20221231_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-20221231_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.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
    <import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd" />
    <import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd" />
    <import namespace="http://fasb.org/us-gaap-sup/2022q3" schemaLocation="https://xbrl.fasb.org/us-gaap/2022q3/us-gaap-sup-2022q3.xsd" />
    <import namespace="http://fasb.org/srt-sup/2022q3" schemaLocation="https://xbrl.fasb.org/srt/2022q3/srt-sup-2022q3.xsd" />
    <import namespace="http://fasb.org/us-types/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd" />
    <import namespace="http://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/2022" schemaLocation="https://xbrl.sec.gov/country/2022/country-2022.xsd" />
    <import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd" />
    <import namespace="http://fasb.org/srt-types/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.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_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_EnpPeruMember" name="EnpPeruMember" 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_InvestmentMember" name="InvestmentMember" 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_TrailerMember" name="TrailerMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_SoftwareMember" name="SoftwareMember" 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_EnpPeruInvestmentsLlcMember" name="EnpPeruInvestmentsLlcMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_NanoChemMember" name="NanoChemMember" 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_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_MidlandStatesBankMember" name="MidlandStatesBankMember" 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_NanoChemSolutionIncMember" name="NanoChemSolutionIncMember" 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_TermLoanMember" name="TermLoanMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockYardAndBankMember" name="StockYardAndBankMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockBankMember" name="StockBankMember" 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_PaycheckProtectionProgramMember" name="PaycheckProtectionProgramMember" 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_FordMotorCreditCompanyMember" name="FordMotorCreditCompanyMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ENPMendotaMember" name="ENPMendotaMember" 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_ENPPeruOneMember" name="ENPPeruOneMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ENPPeruInvestmentsMember" name="ENPPeruInvestmentsMember" 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_StockYardsBankTrustTwoMember" name="StockYardsBankTrustTwoMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockYardsBankTrustThreeMember" name="StockYardsBankTrustThreeMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockYardsBankTrustFourMember" name="StockYardsBankTrustFourMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_StockYardsBankTrustFiveMember" name="StockYardsBankTrustFiveMember" 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_TwoThousandThirtyOneYearMember" name="TwoThousandThirtyOneYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtyTwoYearMember" name="TwoThousandThirtyTwoYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtySevenYearMember" name="TwoThousandThirtySevenYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandThirtyNineYearMember" name="TwoThousandThirtyNineYearMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TwoThousandFourtyYearMember" name="TwoThousandFourtyYearMember" 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_ConsultantMember" name="ConsultantMember" 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_SegmentMember" name="SegmentMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_TPAMember" name="TPAMember" 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_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_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_CurrentIncomeTaxExpenseBenefits" name="CurrentIncomeTaxExpenseBenefits" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" 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_GainOnAcquisitionOfSubsidiary" name="GainOnAcquisitionOfSubsidiary" 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_TermDepositsPolicyTextBlock" name="TermDepositsPolicyTextBlock" 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_ScheduleOfLongTermDepositsTableTextBlock" name="ScheduleOfLongTermDepositsTableTextBlock" 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_IncreaseDecreaseInSharePercentage" name="IncreaseDecreaseInSharePercentage" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_RemainingInvestmentOwnedPercentage" name="RemainingInvestmentOwnedPercentage" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_DepreciationMethodUsedAndAnnualRate" name="DepreciationMethodUsedAndAnnualRate" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_OtherTermDeposit" name="OtherTermDeposit" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_ConcentrationRiskThresholdPercentage" name="ConcentrationRiskThresholdPercentage" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" 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_IncreaseInCurrencyConversion" name="IncreaseInCurrencyConversion" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_InvestmentEliminatedUponConsolidation" name="InvestmentEliminatedUponConsolidation" nillable="true" xbrli:periodType="duration" 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_AdditionalPaymentInvestment" name="AdditionalPaymentInvestment" 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_AdditionalEquityMethodInvestmentOwnershipPercentage" name="AdditionalEquityMethodInvestmentOwnershipPercentage" nillable="true" xbrli:periodType="instant" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_RemainningShareOutstanding" name="RemainningShareOutstanding" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_LoanGuaranteedRate" name="LoanGuaranteedRate" nillable="true" xbrli:periodType="instant" type="dtr-types:percentItemType" 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_ProceedsFromLoanAcquiredFromAcquisition" name="ProceedsFromLoanAcquiredFromAcquisition" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_CurrentTax" name="CurrentTax" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="FSI_IncomeTaxRecovery" name="IncomeTaxRecovery" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" 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_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_CurrentIncomeTaxExpense" name="CurrentIncomeTaxExpense" nillable="true" xbrli:periodType="duration" 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_StatementEquityComponentsAxisipAxis" name="StatementEquityComponentsAxisipAxis" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" />
    <element id="FSI_StatementEquityComponentsAxisipDomain" name="StatementEquityComponentsAxisipDomain" abstract="true" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" 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_AdditionalPayment" name="AdditionalPayment" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>11
<FILENAME>fsi-20221231_cal.xml
<DESCRIPTION>XBRL CALCULATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.18a -->
    <!-- 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-20221231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheets" xlink:href="fsi-20221231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:href="fsi-20221231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:href="fsi-20221231.xsd#StatementsOfIncomeAndComprehensiveIncome" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:href="fsi-20221231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:href="fsi-20221231.xsd#StatementsOfStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:href="fsi-20221231.xsd#BasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:href="fsi-20221231.xsd#SignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Leases" xlink:href="fsi-20221231.xsd#Leases" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivable" xlink:href="fsi-20221231.xsd#AccountsReceivable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Inventories" xlink:href="fsi-20221231.xsd#Inventories" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipment" xlink:href="fsi-20221231.xsd#PropertyPlantEquipment" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Patents" xlink:href="fsi-20221231.xsd#Patents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:href="fsi-20221231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDeposits" xlink:href="fsi-20221231.xsd#LongTermDeposits" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Investments" xlink:href="fsi-20221231.xsd#Investments" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:href="fsi-20221231.xsd#Short-termLineOfCredit" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebt" xlink:href="fsi-20221231.xsd#LongTermDebt" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxes" xlink:href="fsi-20221231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShare" xlink:href="fsi-20221231.xsd#IncomePerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptions" xlink:href="fsi-20221231.xsd#StockOptions" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStock" xlink:href="fsi-20221231.xsd#CapitalStock" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:href="fsi-20221231.xsd#Non-controllingInterests" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEvents" xlink:href="fsi-20221231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesTables" xlink:href="fsi-20221231.xsd#LeasesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:href="fsi-20221231.xsd#AccountsReceivableTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InventoriesTables" xlink:href="fsi-20221231.xsd#InventoriesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipmentTables" xlink:href="fsi-20221231.xsd#PropertyPlantEquipmentTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsTables" xlink:href="fsi-20221231.xsd#PatentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="fsi-20221231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:href="fsi-20221231.xsd#LongTermDepositsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsTables" xlink:href="fsi-20221231.xsd#InvestmentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:href="fsi-20221231.xsd#LongTermDebtTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:href="fsi-20221231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:href="fsi-20221231.xsd#IncomePerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsTables" xlink:href="fsi-20221231.xsd#StockOptionsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:href="fsi-20221231.xsd#Non-controllingInterestsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:href="fsi-20221231.xsd#BasisOfPresentationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:href="fsi-20221231.xsd#ScheduleOfMethodOfDepreciationDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:href="fsi-20221231.xsd#SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfUndiscountedRentPaymentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:href="fsi-20221231.xsd#LeasesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:href="fsi-20221231.xsd#ScheduleOfAccountsReceivableDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInventoryDetails" xlink:href="fsi-20221231.xsd#ScheduleOfInventoryDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative" xlink:href="fsi-20221231.xsd#PropertyPlantEquipmentDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfPatentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:href="fsi-20221231.xsd#ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:href="fsi-20221231.xsd#PatentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLongTermDepositsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:href="fsi-20221231.xsd#ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:href="fsi-20221231.xsd#ScheduleOfEquityMethodInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:href="fsi-20221231.xsd#SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:href="fsi-20221231.xsd#InvestmentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:href="fsi-20221231.xsd#Short-termLineOfCreditDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLoanCovenantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:href="fsi-20221231.xsd#ScheduleOfOutstandingBalanceLoanDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:href="fsi-20221231.xsd#LongTermDebtDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:href="fsi-20221231.xsd#ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:href="fsi-20221231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:href="fsi-20221231.xsd#ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfAnti-dilutiveOptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:href="fsi-20221231.xsd#IncomePerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfStockOptionActivitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:href="fsi-20221231.xsd#StockOptionsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:href="fsi-20221231.xsd#CapitalStockDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfDistributionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:href="fsi-20221231.xsd#Non-controllingInterestsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfReportableSegmentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:href="fsi-20221231.xsd#ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ProfessionalFees" xlink:label="loc_us-gaapProfessionalFees" />
      <link:calculationArc order="4" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OtherGeneralExpense" xlink:label="loc_us-gaapOtherGeneralExpense" />
      <link:calculationArc order="5" 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-20221231.xsd#FSI_Consulting" xlink:label="loc_FSIConsulting" />
      <link:calculationArc order="6" 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/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaapInterestExpense" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapInterestExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense" />
      <link:calculationArc order="8" 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="fsi-20221231.xsd#FSI_InvestorRelationsAndTransferAgentFee" xlink:label="loc_FSIInvestorRelationsAndTransferAgentFee" />
      <link:calculationArc order="9" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TravelAndEntertainmentExpense" xlink:label="loc_us-gaapTravelAndEntertainmentExpense" />
      <link:calculationArc order="10" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaapOperatingLeaseExpense" />
      <link:calculationArc order="11" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
      <link:calculationArc order="12" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CommunicationsAndInformationTechnology" xlink:label="loc_us-gaapCommunicationsAndInformationTechnology" />
      <link:calculationArc order="13" 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="fsi-20221231.xsd#FSI_Commissions" xlink:label="loc_FSICommissions" />
      <link:calculationArc order="14" 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/2022/elts/us-gaap-2022.xsd#us-gaap_UtilitiesOperatingExpense" xlink:label="loc_us-gaapUtilitiesOperatingExpense" />
      <link:calculationArc order="15" 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-20221231.xsd#FSI_ShippingCost" xlink:label="loc_FSIShippingCost" />
      <link:calculationArc order="16" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" />
      <link:calculationArc order="17" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:calculationArc order="2" 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-20221231.xsd#FSI_PppLoanForgiveness" xlink:label="loc_FSIPppLoanForgiveness" />
      <link:calculationArc order="3" 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/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnInvestments" xlink:label="loc_us-gaapGainLossOnInvestments" />
      <link:calculationArc order="4" 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-20221231.xsd#FSI_GainOnAcquisition" xlink:label="loc_FSIGainOnAcquisition" />
      <link:calculationArc order="5" 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/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapInterestIncomeOther" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpenseBenefits" xlink:label="loc_FSICurrentIncomeTaxExpenseBenefits" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapProfitLoss" xlink:to="loc_FSICurrentIncomeTaxExpenseBenefits" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnInvestments" xlink:label="loc_us-gaapGainLossOnInvestments" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapGainLossOnInvestments" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:calculationArc order="9" 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-20221231.xsd#FSI_GainOnAcquisitionOfSubsidiary" xlink:label="loc_FSIGainOnAcquisitionOfSubsidiary" />
      <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_FSIGainOnAcquisitionOfSubsidiary" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments" />
      <link:calculationArc order="1" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:label="loc_us-gaapProceedsFromSaleOfEquityMethodInvestments" />
      <link:calculationArc order="2" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:calculationArc order="3" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfOtherPropertyPlantAndEquipment" />
      <link:calculationArc order="4" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:calculationArc order="5" 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/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="loc_us-gaapPaymentsToMinorityShareholders" />
      <link:calculationArc order="5" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaapProceedsFromIssuanceOfCommonStock" />
      <link:calculationArc order="6" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/PropertyPlantEquipment" xlink:title="00000012 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT" />
    <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/IncomeTaxes" xlink:title="00000019 - Disclosure - INCOME TAXES" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShare" xlink:title="00000020 - Disclosure - INCOME PER SHARE" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptions" xlink:title="00000021 - Disclosure - STOCK OPTIONS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStock" xlink:title="00000022 - Disclosure - CAPITAL STOCK" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:title="00000023 - Disclosure - NON-CONTROLLING INTERESTS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:title="00000024 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEvents" xlink:title="00000025 - Disclosure - SUBSEQUENT EVENTS" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:title="00000026 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:title="00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesTables" xlink:title="00000028 - Disclosure - LEASES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:title="00000029 - Disclosure - ACCOUNTS RECEIVABLE (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InventoriesTables" xlink:title="00000030 - Disclosure - INVENTORIES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyPlantEquipmentTables" xlink:title="00000031 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsTables" xlink:title="00000032 - Disclosure - PATENTS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000033 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:title="00000034 - Disclosure - LONG TERM DEPOSITS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsTables" xlink:title="00000035 - Disclosure - INVESTMENTS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:title="00000036 - Disclosure - LONG TERM DEBT (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:title="00000037 - Disclosure - INCOME TAXES (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:title="00000038 - Disclosure - INCOME PER SHARE (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsTables" xlink:title="00000039 - Disclosure - STOCK OPTIONS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:title="00000040 - Disclosure - NON-CONTROLLING INTERESTS (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:title="00000041 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:title="00000042 - Disclosure - BASIS OF PRESENTATION (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:title="00000043 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="00000044 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:title="00000045 - 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="00000046 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:title="00000047 - Disclosure - LEASES (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:title="00000048 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsAndNotesReceivableNet" xlink:label="loc_us-gaapAccountsAndNotesReceivableNet" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/ScheduleOfInventoryDetails" xlink:title="00000049 - Disclosure - SCHEDULE OF INVENTORY (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="loc_us-gaapInventoryRawMaterialsAndSupplies" />
      <link:calculationArc order="2" 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="00000050 - Disclosure - SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative" xlink:title="00000051 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:title="00000052 - Disclosure - SCHEDULE OF PATENTS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:title="00000053 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:title="00000054 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:title="00000055 - Disclosure - PATENTS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:title="00000056 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:title="00000057 - Disclosure - SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:title="00000058 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:title="00000059 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:title="00000060 - Disclosure - INVESTMENTS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:title="00000061 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:title="00000062 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:title="00000063 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:title="00000064 - Disclosure - LONG TERM DEBT (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:title="00000065 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)">
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentTax" xlink:label="loc_FSICurrentTax" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_FSICurrentTax" xlink:to="loc_us-gaapCurrentFederalTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_FSICurrentTax" xlink:to="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_FSICurrentTax" xlink:to="loc_us-gaapCurrentForeignTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpenseBenefits" xlink:label="loc_FSICurrentIncomeTaxExpenseBenefits" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_FSICurrentIncomeTaxExpenseBenefits" xlink:to="loc_FSICurrentTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_IncomeTaxRecovery" xlink:label="loc_FSIIncomeTaxRecovery" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_FSICurrentIncomeTaxExpenseBenefits" xlink:to="loc_FSIIncomeTaxRecovery" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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_FSICurrentIncomeTaxExpenseBenefits" 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="00000066 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:title="00000067 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:title="00000068 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000069 - Disclosure - INCOME TAXES (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:title="00000070 - 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="00000071 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:title="00000072 - Disclosure - INCOME PER SHARE (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:title="00000073 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:title="00000074 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:title="00000075 - Disclosure - STOCK OPTIONS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:title="00000076 - Disclosure - CAPITAL STOCK (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:title="00000077 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:title="00000078 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:title="00000079 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:title="00000080 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:title="00000081 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:title="00000082 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:title="00000083 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>12
<FILENAME>fsi-20221231_def.xml
<DESCRIPTION>XBRL DEFINITION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.18a -->
    <!-- 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-20221231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheets" xlink:href="fsi-20221231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:href="fsi-20221231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:href="fsi-20221231.xsd#StatementsOfIncomeAndComprehensiveIncome" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:href="fsi-20221231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:href="fsi-20221231.xsd#StatementsOfStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:href="fsi-20221231.xsd#BasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:href="fsi-20221231.xsd#SignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Leases" xlink:href="fsi-20221231.xsd#Leases" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivable" xlink:href="fsi-20221231.xsd#AccountsReceivable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Inventories" xlink:href="fsi-20221231.xsd#Inventories" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipment" xlink:href="fsi-20221231.xsd#PropertyPlantEquipment" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Patents" xlink:href="fsi-20221231.xsd#Patents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:href="fsi-20221231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDeposits" xlink:href="fsi-20221231.xsd#LongTermDeposits" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Investments" xlink:href="fsi-20221231.xsd#Investments" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:href="fsi-20221231.xsd#Short-termLineOfCredit" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebt" xlink:href="fsi-20221231.xsd#LongTermDebt" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxes" xlink:href="fsi-20221231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShare" xlink:href="fsi-20221231.xsd#IncomePerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptions" xlink:href="fsi-20221231.xsd#StockOptions" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStock" xlink:href="fsi-20221231.xsd#CapitalStock" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:href="fsi-20221231.xsd#Non-controllingInterests" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEvents" xlink:href="fsi-20221231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesTables" xlink:href="fsi-20221231.xsd#LeasesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:href="fsi-20221231.xsd#AccountsReceivableTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InventoriesTables" xlink:href="fsi-20221231.xsd#InventoriesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipmentTables" xlink:href="fsi-20221231.xsd#PropertyPlantEquipmentTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsTables" xlink:href="fsi-20221231.xsd#PatentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="fsi-20221231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:href="fsi-20221231.xsd#LongTermDepositsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsTables" xlink:href="fsi-20221231.xsd#InvestmentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:href="fsi-20221231.xsd#LongTermDebtTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:href="fsi-20221231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:href="fsi-20221231.xsd#IncomePerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsTables" xlink:href="fsi-20221231.xsd#StockOptionsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:href="fsi-20221231.xsd#Non-controllingInterestsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:href="fsi-20221231.xsd#BasisOfPresentationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:href="fsi-20221231.xsd#ScheduleOfMethodOfDepreciationDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:href="fsi-20221231.xsd#SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfUndiscountedRentPaymentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:href="fsi-20221231.xsd#LeasesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:href="fsi-20221231.xsd#ScheduleOfAccountsReceivableDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInventoryDetails" xlink:href="fsi-20221231.xsd#ScheduleOfInventoryDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative" xlink:href="fsi-20221231.xsd#PropertyPlantEquipmentDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfPatentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:href="fsi-20221231.xsd#ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:href="fsi-20221231.xsd#PatentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLongTermDepositsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:href="fsi-20221231.xsd#ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:href="fsi-20221231.xsd#ScheduleOfEquityMethodInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:href="fsi-20221231.xsd#SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:href="fsi-20221231.xsd#InvestmentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:href="fsi-20221231.xsd#Short-termLineOfCreditDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLoanCovenantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:href="fsi-20221231.xsd#ScheduleOfOutstandingBalanceLoanDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:href="fsi-20221231.xsd#LongTermDebtDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:href="fsi-20221231.xsd#ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:href="fsi-20221231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:href="fsi-20221231.xsd#ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfAnti-dilutiveOptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:href="fsi-20221231.xsd#IncomePerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfStockOptionActivitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:href="fsi-20221231.xsd#StockOptionsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:href="fsi-20221231.xsd#CapitalStockDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfDistributionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:href="fsi-20221231.xsd#Non-controllingInterestsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfReportableSegmentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:href="fsi-20221231.xsd#ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/PropertyPlantEquipment" xlink:title="00000012 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT" />
    <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/IncomeTaxes" xlink:title="00000019 - Disclosure - INCOME TAXES" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShare" xlink:title="00000020 - Disclosure - INCOME PER SHARE" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptions" xlink:title="00000021 - Disclosure - STOCK OPTIONS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStock" xlink:title="00000022 - Disclosure - CAPITAL STOCK" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:title="00000023 - Disclosure - NON-CONTROLLING INTERESTS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:title="00000024 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SubsequentEvents" xlink:title="00000025 - Disclosure - SUBSEQUENT EVENTS" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:title="00000026 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:title="00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesTables" xlink:title="00000028 - Disclosure - LEASES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:title="00000029 - Disclosure - ACCOUNTS RECEIVABLE (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InventoriesTables" xlink:title="00000030 - Disclosure - INVENTORIES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyPlantEquipmentTables" xlink:title="00000031 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PatentsTables" xlink:title="00000032 - Disclosure - PATENTS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000033 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:title="00000034 - Disclosure - LONG TERM DEPOSITS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/InvestmentsTables" xlink:title="00000035 - Disclosure - INVESTMENTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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-20221231.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="fsi-20221231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsTextBlock" xlink:label="loc_us-gaapEquityMethodInvestmentsTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentsTextBlock_50" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnInvestmentsTextBlock" xlink:label="loc_us-gaapGainLossOnInvestmentsTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGainLossOnInvestmentsTextBlock_50" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:title="00000036 - Disclosure - LONG TERM DEBT (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:title="00000037 - Disclosure - INCOME TAXES (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:title="00000038 - Disclosure - INCOME PER SHARE (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsTables" xlink:title="00000039 - Disclosure - STOCK OPTIONS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:title="00000040 - Disclosure - NON-CONTROLLING INTERESTS (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:title="00000041 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:title="00000042 - Disclosure - BASIS OF PRESENTATION (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="fsi-20221231.xsd#FSI_EnpPeruMember" xlink:label="loc_FSIEnpPeruMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpPeruMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_UnrelatedPartyMember" xlink:label="loc_FSIUnrelatedPartyMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIUnrelatedPartyMember_20" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_30" xlink:type="arc" order="32" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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="42" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest" xlink:label="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapSubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_90" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1_90" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_IncreaseDecreaseInSharePercentage" xlink:label="loc_FSIIncreaseDecreaseInSharePercentage_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIIncreaseDecreaseInSharePercentage_90" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_RemainingInvestmentOwnedPercentage" xlink:label="loc_FSIRemainingInvestmentOwnedPercentage_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIRemainingInvestmentOwnedPercentage_90" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent_90" xlink:type="arc" order="4" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:title="00000043 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapMachineryAndEquipmentMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBoatMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="loc_us-gaapBuildingAndBuildingImprovementsMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapBuildingAndBuildingImprovementsMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSITrailerMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AutomobilesMember" xlink:label="loc_us-gaapAutomobilesMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapAutomobilesMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaapPatentsMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapPatentsMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TechnologyEquipmentMember" xlink:label="loc_us-gaapTechnologyEquipmentMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapTechnologyEquipmentMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaapCustomerRelationshipsMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapCustomerRelationshipsMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_SoftwareMember" xlink:label="loc_FSISoftwareMember_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSISoftwareMember_110" xlink:type="arc" order="111" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DepreciationMethodUsedAndAnnualRate" xlink:label="loc_FSIDepreciationMethodUsedAndAnnualRate_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIDepreciationMethodUsedAndAnnualRate_130" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="00000044 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductInformationLineItems" xlink:label="loc_us-gaapProductInformationLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ShippingAndHandlingMember" xlink:label="loc_us-gaapShippingAndHandlingMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_us-gaapShippingAndHandlingMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_ThreePrimaryCustomersMember" xlink:label="loc_FSIThreePrimaryCustomersMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskTypeDomain" xlink:to="loc_FSIThreePrimaryCustomersMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="loc_us-gaapRevenueFromContractWithCustomerMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapRevenueFromContractWithCustomerMember_40" xlink:type="arc" order="42" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapAccountsReceivableMember_80" xlink:type="arc" order="82" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_InvestmentMember" xlink:label="loc_FSIInvestmentMember_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIInvestmentMember_110" xlink:type="arc" order="111" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Deposits" xlink:label="loc_us-gaapDeposits_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapDeposits_130" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_130" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPayableCurrentAndNoncurrent" xlink:label="loc_us-gaapInterestPayableCurrentAndNoncurrent_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInterestPayableCurrentAndNoncurrent_130" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_OtherTermDeposit" xlink:label="loc_FSIOtherTermDeposit_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_FSIOtherTermDeposit_130" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold_130" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ConcentrationRiskThresholdPercentage" xlink:label="loc_FSIConcentrationRiskThresholdPercentage_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_FSIConcentrationRiskThresholdPercentage_130" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAccountsReceivableNet_130" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities" xlink:label="loc_us-gaapEquityMethodInvestmentDescriptionOfPrincipalActivities_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentDescriptionOfPrincipalActivities_130" xlink:type="arc" order="8" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:title="00000045 - 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="00000046 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:title="00000047 - Disclosure - LEASES (Details Narrative)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:title="00000048 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfInventoryDetails" xlink:title="00000049 - Disclosure - SCHEDULE OF INVENTORY (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:title="00000050 - Disclosure - SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="loc_us-gaapBuildingAndBuildingImprovementsMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapBuildingAndBuildingImprovementsMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapMachineryAndEquipmentMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSITrailerMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSIBoatMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaapDevelopedTechnologyRightsMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapDevelopedTechnologyRightsMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember" xlink:label="loc_us-gaapLandMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLandMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross_230" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_230" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet_230" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative" xlink:title="00000051 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaapDepreciation_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapDepreciation_60" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AreaOfLand" xlink:label="loc_us-gaapAreaOfLand_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAreaOfLand_60" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfMachineryAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfMachineryAndEquipment_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapProceedsFromSaleOfMachineryAndEquipment_60" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross_60" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1_60" xlink:type="arc" order="4" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:title="00000052 - Disclosure - SCHEDULE OF PATENTS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:title="00000053 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:title="00000054 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:label="loc_us-gaapImpairmentEffectsOnEarningsPerShareLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/PatentsDetailsNarrative" xlink:title="00000055 - Disclosure - PATENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/us-gaap/2022/elts/us-gaap-2022.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="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaapPatentsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapPatentsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_IncreaseInCurrencyConversion" xlink:label="loc_FSIIncreaseInCurrencyConversion_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_FSIIncreaseInCurrencyConversion_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapAmortizationOfIntangibleAssets_50" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:title="00000056 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:title="00000057 - Disclosure - SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:title="00000058 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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-20221231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIFloridaBasedLLCMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestments" xlink:label="loc_us-gaapEquityMethodInvestments_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestments_140" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EquityMethodInvestmentReturnOfEquity" xlink:label="loc_FSIEquityMethodInvestmentReturnOfEquity_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIEquityMethodInvestmentReturnOfEquity_140" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:label="loc_us-gaapEquityMethodInvestmentRealizedGainLossOnDisposal_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentRealizedGainLossOnDisposal_140" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_InvestmentEliminatedUponConsolidation" xlink:label="loc_FSIInvestmentEliminatedUponConsolidation_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIInvestmentEliminatedUponConsolidation_140" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_AdditionalPaymentInvestment" xlink:label="loc_FSIAdditionalPaymentInvestment_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIAdditionalPaymentInvestment_140" xlink:type="arc" order="5" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:title="00000059 - 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/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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-20221231.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/InvestmentsDetailsNarrative" xlink:title="00000060 - Disclosure - INVESTMENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:label="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:label="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_NanoChemMember" xlink:label="loc_FSINanoChemMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSINanoChemMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIFloridaBasedLLCMember_110" xlink:type="arc" order="111" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_srtOwnershipAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.xsd#FSI_EnpPeruMember" xlink:label="loc_FSIEnpPeruMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpPeruMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpnvestmentsLlcMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="loc_deiLegalEntityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_deiLegalEntityAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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/2022/dei-2022.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-20221231.xsd#FSI_AppliedHoldingCorpMember" xlink:label="loc_FSIAppliedHoldingCorpMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIAppliedHoldingCorpMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TrioOpportunityCorpMember" xlink:label="loc_FSITrioOpportunityCorpMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSITrioOpportunityCorpMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSILygosIncMember_160" xlink:type="arc" order="161" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_us-gaapStatementClassOfStockAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_CommonClassBMember" xlink:label="loc_us-gaapCommonClassBMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapClassOfStockDomain" xlink:to="loc_us-gaapCommonClassBMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIFloridaBasedLLCMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_190" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_AdditionalEquityMethodInvestmentOwnershipPercentage" xlink:label="loc_FSIAdditionalEquityMethodInvestmentOwnershipPercentage_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_FSIAdditionalEquityMethodInvestmentOwnershipPercentage_190" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_RemainningShareOutstanding" xlink:label="loc_FSIRemainningShareOutstanding_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_FSIRemainningShareOutstanding_190" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Cash" xlink:label="loc_us-gaapCash_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapCash_190" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent_190" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:label="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_190" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaapDebtInstrumentMaturityDate_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapDebtInstrumentMaturityDate_190" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues_190" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaapSharePrice_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapSharePrice_190" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties" xlink:label="loc_us-gaapRevenueFromRelatedParties_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapRevenueFromRelatedParties_190" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableRelatedParties" xlink:label="loc_us-gaapAccountsReceivableRelatedParties_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapAccountsReceivableRelatedParties_190" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapPaymentsToAcquireInvestments_190" xlink:type="arc" order="11" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:title="00000061 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaapLineOfCreditFacilityLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIHarrisBankMember_90" xlink:type="arc" order="92" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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.sec.gov/dei/2022/dei-2022.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="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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/2022/dei-2022.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-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIHarrisBankMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardAndBankMember" xlink:label="loc_FSIStockYardAndBankMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIStockYardAndBankMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockBankMember" xlink:label="loc_FSIStockBankMember_190" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIStockBankMember_190" xlink:type="arc" order="191" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSITermLoanMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaapCreditFacilityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapCreditFacilityAxis" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaapRevolvingCreditFacilityMember_220" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCreditFacilityDomain" xlink:to="loc_us-gaapRevolvingCreditFacilityMember_220" xlink:type="arc" order="224" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_250" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod_250" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateAtPeriodEnd_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityInterestRateAtPeriodEnd_250" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_LoanGuaranteedRate" xlink:label="loc_FSILoanGuaranteedRate_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSILoanGuaranteedRate_250" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaapLinesOfCreditCurrent_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLinesOfCreditCurrent_250" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermBorrowings" xlink:label="loc_us-gaapShortTermBorrowings_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapShortTermBorrowings_250" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EligiblePercentageOfDomesticAccountsReceivable" xlink:label="loc_FSIEligiblePercentageOfDomesticAccountsReceivable_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSIEligiblePercentageOfDomesticAccountsReceivable_250" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_PercentageOfForeignAccountsReceivableOfInventory" xlink:label="loc_FSIPercentageOfForeignAccountsReceivableOfInventory_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_FSIPercentageOfForeignAccountsReceivableOfInventory_250" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_250" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaapDebtInstrumentFaceAmount_250" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentFaceAmount_250" xlink:type="arc" order="9" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:title="00000062 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:title="00000063 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_PaycheckProtectionProgramOneMember" xlink:label="loc_FSIPaycheckProtectionProgramOneMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramOneMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_MidlandStatesBankOneMember" xlink:label="loc_FSIMidlandStatesBankOneMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankOneMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_MidlandStatesBankTwoMember" xlink:label="loc_FSIMidlandStatesBankTwoMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandStatesBankTwoMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustTwoMember" xlink:label="loc_FSIStockYardsBankTrustTwoMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustTwoMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustThreeMember" xlink:label="loc_FSIStockYardsBankTrustThreeMember_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustThreeMember_140" xlink:type="arc" order="141" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustFourMember" xlink:label="loc_FSIStockYardsBankTrustFourMember_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustFourMember_160" xlink:type="arc" order="161" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustFiveMember" xlink:label="loc_FSIStockYardsBankTrustFiveMember_180" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustFiveMember_180" xlink:type="arc" order="181" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebt_230" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaapLongTermDebtCurrent_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebtCurrent_230" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLongTermDebtNoncurrent_230" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:title="00000064 - Disclosure - LONG TERM DEBT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermDebtLineItems" xlink:label="loc_us-gaapShortTermDebtLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_MidlandBankMember" xlink:label="loc_FSIMidlandBankMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIMidlandBankMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIPaycheckProtectionProgramMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_FordMotorCreditCompanyMember" xlink:label="loc_FSIFordMotorCreditCompanyMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIFordMotorCreditCompanyMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember_220" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustMember_220" xlink:type="arc" order="221" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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/2022/dei-2022.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-20221231.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="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_NanoChemSolutionsIncMember" xlink:label="loc_FSINanoChemSolutionsIncMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemSolutionsIncMember_30" xlink:type="arc" order="32" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ENPMendotaMember" xlink:label="loc_FSIENPMendotaMember_210" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIENPMendotaMember_210" xlink:type="arc" order="213" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember_220" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIEnpRealtyLLCMember_220" xlink:type="arc" order="222" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_NanoChemMember" xlink:label="loc_FSINanoChemMember_290" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemMember_290" xlink:type="arc" order="293" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ENPPeruOneMember" xlink:label="loc_FSIENPPeruOneMember_360" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIENPPeruOneMember_360" xlink:type="arc" order="363" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ENPPeruInvestmentsMember" xlink:label="loc_FSIENPPeruInvestmentsMember_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIENPPeruInvestmentsMember_430" xlink:type="arc" order="433" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_FSITermLoanMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_PrimeRateMember" xlink:label="loc_us-gaapPrimeRateMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapVariableRateDomain" xlink:to="loc_us-gaapPrimeRateMember_80" xlink:type="arc" order="83" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaapDebtInstrumentFaceAmount_560" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentFaceAmount_560" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_560" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage_560" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm" xlink:label="loc_us-gaapDebtInstrumentTerm_560" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentTerm_560" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaapInterestExpenseDebt_560" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapInterestExpenseDebt_560" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDefaultLongtermDebtAmount" xlink:label="loc_us-gaapDebtDefaultLongtermDebtAmount_560" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtDefaultLongtermDebtAmount_560" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansPayable" xlink:label="loc_us-gaapLoansPayable_560" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLoansPayable_560" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaapInterestExpense_560" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapInterestExpense_560" xlink:type="arc" order="6" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:title="00000065 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:title="00000066 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:title="00000067 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaapDeferredTaxAssetsGross_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsGross_50" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaapDeferredTaxAssetsNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsNet_50" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="6" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="9" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaapDeferredTaxAssetsLiabilitiesNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsLiabilitiesNet_50" xlink:type="arc" order="11" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:title="00000068 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_TwoThousandThirtyTaxYearMember" xlink:label="loc_FSITwoThousandThirtyTaxYearMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyTaxYearMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtyOneYearMember" xlink:label="loc_FSITwoThousandThirtyOneYearMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyOneYearMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtyTwoYearMember" xlink:label="loc_FSITwoThousandThirtyTwoYearMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyTwoYearMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtySevenYearMember" xlink:label="loc_FSITwoThousandThirtySevenYearMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtySevenYearMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtyNineYearMember" xlink:label="loc_FSITwoThousandThirtyNineYearMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyNineYearMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandFourtyYearMember" xlink:label="loc_FSITwoThousandFourtyYearMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandFourtyYearMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwards_80" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000069 - Disclosure - INCOME TAXES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpense" xlink:label="loc_FSICurrentIncomeTaxExpense_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSICurrentIncomeTaxExpense_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapOperatingLossCarryforwards_50" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:title="00000070 - 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="00000071 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:title="00000072 - Disclosure - INCOME PER SHARE (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems" xlink:label="loc_us-gaapOperatingLossCarryforwardsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000073 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_160" xlink:type="arc" order="17" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:title="00000074 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_50" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_50" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_50" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:title="00000075 - Disclosure - STOCK OPTIONS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:label="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_us-gaapCanadaRevenueAgencyMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_110" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_110" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_110" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_110" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionPlanExpense" xlink:label="loc_us-gaapStockOptionPlanExpense_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapStockOptionPlanExpense_110" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_AdditionalExpensesDueToOptionsGranted" xlink:label="loc_FSIAdditionalExpensesDueToOptionsGranted_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_FSIAdditionalExpensesDueToOptionsGranted_110" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_110" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_110" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_110" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_110" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_110" xlink:type="arc" order="10" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:title="00000076 - Disclosure - CAPITAL STOCK (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OffsettingAssetsLineItems" xlink:label="loc_us-gaapOffsettingAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionMember" xlink:label="loc_us-gaapStockOptionMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_us-gaapStockOptionMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapOffsettingAssetsTable" xlink:to="loc_srtTitleOfIndividualAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.xsd#FSI_ConsultantMember" xlink:label="loc_FSIConsultantMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIConsultantMember_20" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000077 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000078 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:label="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.xsd#FSI_StatementEquityComponentsAxisipAxis" xlink:label="loc_FSIStatementEquityComponentsAxisipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_FSIStatementEquityComponentsAxisipAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StatementEquityComponentsAxisipDomain" xlink:label="loc_FSIStatementEquityComponentsAxisipDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_FSIStatementEquityComponentsAxisipAxis" xlink:to="loc_FSIStatementEquityComponentsAxisipDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StatementEquityComponentsAxisipDomain" xlink:label="loc_FSIStatementEquityComponentsAxisipDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_FSIStatementEquityComponentsAxisipAxis" xlink:to="loc_FSIStatementEquityComponentsAxisipDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="loc_us-gaapNoncontrollingInterestMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_FSIStatementEquityComponentsAxisipDomain" xlink:to="loc_us-gaapNoncontrollingInterestMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="loc_us-gaapNoncontrollingInterestMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapNoncontrollingInterestMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapRevenues_70" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapAccountsReceivableNetCurrent_70" xlink:type="arc" order="4" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:title="00000079 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:label="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.xsd#FSI_TPAMember" xlink:label="loc_FSITPAMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_FSITPAMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_SegmentMember" xlink:label="loc_FSISegmentMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_FSISegmentMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapNetIncomeLoss_70" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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="00000080 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/country-2022.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-20221231.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/2022/elts/us-gaap-2022.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-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:title="00000081 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaapRevenuesFromExternalCustomersAndLongLivedAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/country-2022.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/2022/country-2022.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/2022/elts/us-gaap-2022.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="00000082 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:label="loc_us-gaapEntityWideRevenueMajorCustomerLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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/2022/elts/us-gaap-2022.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-20221231.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="00000083 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventLineItems" xlink:label="loc_us-gaapSubsequentEventLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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="fsi-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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>13
<FILENAME>fsi-20221231_lab.xml
<DESCRIPTION>XBRL LABEL FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.18a -->
    <!-- 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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-20221231.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, LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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-20221231.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-20221231.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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="fsi-20221231.xsd#FSI_EnpPeruMember" xlink:label="FSI_EnpPeruMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_EnpPeruMember" xlink:to="FSI_EnpPeruMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_EnpPeruMember_lbl" xml:lang="en-US">Enp Peru [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_lbl" xml:lang="en-US">Investment, Name [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_InvestmentMember" xlink:label="FSI_InvestmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InvestmentMember" xlink:to="FSI_InvestmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_InvestmentMember_lbl" xml:lang="en-US">Investment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingAndBuildingImprovementsMember" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember_lbl" xml:lang="en-US">Building and Building Improvements [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_SoftwareMember" xlink:label="FSI_SoftwareMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SoftwareMember" xlink:to="FSI_SoftwareMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SoftwareMember_lbl" xml:lang="en-US">Software [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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.sec.gov/dei/2022/dei-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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-20221231.xsd#FSI_NanoChemMember" xlink:label="FSI_NanoChemMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_NanoChemMember" xlink:to="FSI_NanoChemMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_NanoChemMember_lbl" xml:lang="en-US">Nano Chem [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="fsi-20221231.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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-20221231.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="fsi-20221231.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/2022/elts/us-gaap-2022.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-20221231.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="fsi-20221231.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/2022/elts/us-gaap-2022.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-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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-20221231.xsd#FSI_StockYardAndBankMember" xlink:label="FSI_StockYardAndBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardAndBankMember" xlink:to="FSI_StockYardAndBankMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockYardAndBankMember_lbl" xml:lang="en-US">Stock Yard And Bank One [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockBankMember" xlink:label="FSI_StockBankMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockBankMember" xlink:to="FSI_StockBankMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockBankMember_lbl" xml:lang="en-US">Stock Bank [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CreditFacilityAxis_lbl" xml:lang="en-US">Credit Facility [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevolvingCreditFacilityMember" xlink:to="us-gaap_RevolvingCreditFacilityMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevolvingCreditFacilityMember_lbl" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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-20221231.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-20221231.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="fsi-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_ENPMendotaMember" xlink:label="FSI_ENPMendotaMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ENPMendotaMember" xlink:to="FSI_ENPMendotaMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ENPMendotaMember_lbl" xml:lang="en-US">ENP Mendota, LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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 &amp; Trust [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ENPPeruOneMember" xlink:label="FSI_ENPPeruOneMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ENPPeruOneMember" xlink:to="FSI_ENPPeruOneMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ENPPeruOneMember_lbl" xml:lang="en-US">ENP Peru One [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ENPPeruInvestmentsMember" xlink:label="FSI_ENPPeruInvestmentsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ENPPeruInvestmentsMember" xlink:to="FSI_ENPPeruInvestmentsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ENPPeruInvestmentsMember_lbl" xml:lang="en-US">ENP Peru Investments [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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-20221231.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-20221231.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="fsi-20221231.xsd#FSI_StockYardsBankTrustTwoMember" xlink:label="FSI_StockYardsBankTrustTwoMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustTwoMember" xlink:to="FSI_StockYardsBankTrustTwoMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockYardsBankTrustTwoMember_lbl" xml:lang="en-US">Stock Yards Bank &amp; Trust Two [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustThreeMember" xlink:label="FSI_StockYardsBankTrustThreeMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustThreeMember" xlink:to="FSI_StockYardsBankTrustThreeMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockYardsBankTrustThreeMember_lbl" xml:lang="en-US">Stock Yards Bank &amp; Trust Three [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustFourMember" xlink:label="FSI_StockYardsBankTrustFourMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustFourMember" xlink:to="FSI_StockYardsBankTrustFourMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockYardsBankTrustFourMember_lbl" xml:lang="en-US">Stock Yards Bank &amp; Trust Four [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustFiveMember" xlink:label="FSI_StockYardsBankTrustFiveMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustFiveMember" xlink:to="FSI_StockYardsBankTrustFiveMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StockYardsBankTrustFiveMember_lbl" xml:lang="en-US">Stock Yards Bank &amp; Trust Five [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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-20221231.xsd#FSI_TwoThousandThirtyOneYearMember" xlink:label="FSI_TwoThousandThirtyOneYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyOneYearMember" xlink:to="FSI_TwoThousandThirtyOneYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtyOneYearMember_lbl" xml:lang="en-US">2031 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtyTwoYearMember" xlink:label="FSI_TwoThousandThirtyTwoYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyTwoYearMember" xlink:to="FSI_TwoThousandThirtyTwoYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtyTwoYearMember_lbl" xml:lang="en-US">2032 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtySevenYearMember" xlink:label="FSI_TwoThousandThirtySevenYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtySevenYearMember" xlink:to="FSI_TwoThousandThirtySevenYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtySevenYearMember_lbl" xml:lang="en-US">2037 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtyNineYearMember" xlink:label="FSI_TwoThousandThirtyNineYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyNineYearMember" xlink:to="FSI_TwoThousandThirtyNineYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandThirtyNineYearMember_lbl" xml:lang="en-US">2039 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandFourtyYearMember" xlink:label="FSI_TwoThousandFourtyYearMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandFourtyYearMember" xlink:to="FSI_TwoThousandFourtyYearMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TwoThousandFourtyYearMember_lbl" xml:lang="en-US">2040 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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-20221231.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-20221231.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionMember" xlink:label="us-gaap_StockOptionMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockOptionMember" xlink:to="us-gaap_StockOptionMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockOptionMember_lbl" xml:lang="en-US">Equity Option [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ConsultantMember" xlink:label="FSI_ConsultantMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ConsultantMember" xlink:to="FSI_ConsultantMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ConsultantMember_lbl" xml:lang="en-US">Consultant [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StatementEquityComponentsAxisipAxis" xlink:label="FSI_StatementEquityComponentsAxisipAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StatementEquityComponentsAxisipAxis" xlink:to="FSI_StatementEquityComponentsAxisipAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_StatementEquityComponentsAxisipAxis_lbl" xml:lang="en-US">Statement Equity Components Axisip [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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-20221231.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_SegmentMember" xlink:label="FSI_SegmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SegmentMember" xlink:to="FSI_SegmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_SegmentMember_lbl" xml:lang="en-US">Segment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TPAMember" xlink:label="FSI_TPAMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TPAMember" xlink:to="FSI_TPAMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TPAMember_lbl" xml:lang="en-US">TPA [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/country-2022.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-20221231.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/2022/country-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address, Address Line One</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address, City or Town</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address, State or Province</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US">Written Communications</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US">Soliciting Material</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.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/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 13)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 13)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_lbl" xml:lang="en-US">Stockholders&#8217; Equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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 16) 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,426,260 (2021: 12,355,246) common shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 17)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/label" 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/2022/elts/us-gaap-2022.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="fsi-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.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-20221231.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/2022/elts/us-gaap-2022.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-20221231.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 previously held equity interest (Note 10)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther" xlink:label="us-gaap_InterestIncomeOther" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeOther" xlink:to="us-gaap_InterestIncomeOther_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestIncomeOther_lbl" xml:lang="en-US">Interest income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 13)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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 recovery (expense)</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpenseBenefits" xlink:label="FSI_CurrentIncomeTaxExpenseBenefits" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CurrentIncomeTaxExpenseBenefits" xlink:to="FSI_CurrentIncomeTaxExpenseBenefits_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="FSI_CurrentIncomeTaxExpenseBenefits_lbl" xml:lang="en-US">Current income tax expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/totalLabel" xlink:label="us-gaap_ProfitLoss_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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/totalLabel" 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/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Income per share (basic) (Note 14)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Income per share (diluted) (Note 14)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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: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/label" xlink:label="us-gaap_ProfitLoss_2_lbl" xml:lang="en-US">Net income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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 (loss) on foreign currency transactions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProfitLoss_3_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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnInvestments" xlink:to="us-gaap_GainLossOnInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnInvestments_2_lbl" xml:lang="en-US">Gain on investments</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="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-20221231.xsd#FSI_GainOnAcquisitionOfSubsidiary" xlink:label="FSI_GainOnAcquisitionOfSubsidiary" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnAcquisitionOfSubsidiary" xlink:to="FSI_GainOnAcquisitionOfSubsidiary_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="FSI_GainOnAcquisitionOfSubsidiary_lbl" xml:lang="en-US">Gain on acquisition of ENP Peru, LLC</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 in inventories</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">Decrease (increase) in prepaid expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 Peru, LLC</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 of short term line of credit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 provided by (used in) financing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 of cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Cash" xlink:to="us-gaap_Cash_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_Cash_2_lbl" xml:lang="en-US">Cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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">Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">Balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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">Balance</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">Balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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, PLANT &amp; EQUIPMENT</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_TermDepositsPolicyTextBlock" xlink:label="FSI_TermDepositsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TermDepositsPolicyTextBlock" xlink:to="FSI_TermDepositsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_TermDepositsPolicyTextBlock_lbl" xml:lang="en-US">Term Deposits</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_lbl" xml:lang="en-US">Goodwill and Intangible Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 INVENTORY</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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 FUTURE AMORTIZATION EXPENSE</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xml:lang="en-US">SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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 STATE</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_IncreaseDecreaseInSharePercentage" xlink:label="FSI_IncreaseDecreaseInSharePercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_IncreaseDecreaseInSharePercentage" xlink:to="FSI_IncreaseDecreaseInSharePercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_IncreaseDecreaseInSharePercentage_lbl" xml:lang="en-US">Increase decrease in share percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_RemainingInvestmentOwnedPercentage" xlink:label="FSI_RemainingInvestmentOwnedPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RemainingInvestmentOwnedPercentage" xlink:to="FSI_RemainingInvestmentOwnedPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_RemainingInvestmentOwnedPercentage_lbl" xml:lang="en-US">Remaining investment owned percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">Minority interest ownership percentage by parent</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Deposits" xlink:label="us-gaap_Deposits" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Deposits" xlink:to="us-gaap_Deposits_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Deposits_lbl" xml:lang="en-US">Deposit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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 interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPayableCurrentAndNoncurrent" xlink:label="us-gaap_InterestPayableCurrentAndNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPayableCurrentAndNoncurrent" xlink:to="us-gaap_InterestPayableCurrentAndNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestPayableCurrentAndNoncurrent_lbl" xml:lang="en-US">Accured interest</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_OtherTermDeposit" xlink:label="FSI_OtherTermDeposit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_OtherTermDeposit" xlink:to="FSI_OtherTermDeposit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_OtherTermDeposit_lbl" xml:lang="en-US">Other term deposit</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 sales</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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">Accounts receivable, after allowance for credit loss, percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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</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, beginning balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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, beginning balance</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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">2023</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">2024</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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, 2022</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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">Total inventory</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xml:lang="en-US">Recognized gains</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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: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/2022/elts/us-gaap-2022.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 assets, ending balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_2_lbl" xml:lang="en-US">Indefinite lived intangible assets, beginning balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_3_lbl" xml:lang="en-US">Indefinite lived intangible assets, ending balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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">2023</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">2024</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xml:lang="en-US">2026</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">2027</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.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:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AmortizationOfIntangibleAssets_2_lbl" xml:lang="en-US">Amortization of intangible assets</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_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_2_lbl" xml:lang="en-US">Purchase consideration</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/periodEndLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xml:lang="en-US">Cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/periodEndLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_lbl" xml:lang="en-US">Building</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/periodEndLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_lbl" xml:lang="en-US">Land</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/negatedPeriodEndLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_lbl" xml:lang="en-US">Deferred tax liability</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" xlink:to="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_lbl" xml:lang="en-US">Long term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl" xml:lang="en-US">Total identifiable net assets:</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" xlink:to="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_lbl" xml:lang="en-US">Excess of assets acquired over consideration</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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">Less investment eliminated upon consolidation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_GainOnAcquisitionOfSubsidiary" xlink:to="FSI_GainOnAcquisitionOfSubsidiary_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_GainOnAcquisitionOfSubsidiary_2_lbl" xml:lang="en-US">Gain on acquisition of ENP Peru</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-20221231.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/2022/elts/us-gaap-2022.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 (loss) in equity method investment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_InvestmentEliminatedUponConsolidation" xlink:to="FSI_InvestmentEliminatedUponConsolidation_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_InvestmentEliminatedUponConsolidation_2_lbl" xml:lang="en-US">Investment eliminated upon consolidation</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-20221231.xsd#FSI_AdditionalPaymentInvestment" xlink:label="FSI_AdditionalPaymentInvestment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AdditionalPaymentInvestment" xlink:to="FSI_AdditionalPaymentInvestment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_AdditionalPaymentInvestment_lbl" xml:lang="en-US">Additional payment investment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:label="us-gaap_ScheduleOfEquityMethodInvestmentsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:to="us-gaap_ScheduleOfEquityMethodInvestmentsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEquityMethodInvestmentsTable_lbl" xml:lang="en-US">Schedule of Equity Method Investments [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:label="us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:to="us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_lbl" xml:lang="en-US">Schedule of Equity Method Investments [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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 percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_AdditionalEquityMethodInvestmentOwnershipPercentage" xlink:label="FSI_AdditionalEquityMethodInvestmentOwnershipPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AdditionalEquityMethodInvestmentOwnershipPercentage" xlink:to="FSI_AdditionalEquityMethodInvestmentOwnershipPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_AdditionalEquityMethodInvestmentOwnershipPercentage_lbl" xml:lang="en-US">Additional ownership interest</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_RemainningShareOutstanding" xlink:label="FSI_RemainningShareOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RemainningShareOutstanding" xlink:to="FSI_RemainningShareOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_RemainningShareOutstanding_lbl" xml:lang="en-US">Remainning share outstanding</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Cash" xlink:to="us-gaap_Cash_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Cash_3_lbl" xml:lang="en-US">cash</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByParent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent_2_lbl" xml:lang="en-US">Minority Interest Ownership Percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDate" xlink:to="us-gaap_DebtInstrumentMaturityDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentMaturityDate_lbl" xml:lang="en-US">Debt maturity date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties" xlink:label="us-gaap_RevenueFromRelatedParties" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromRelatedParties" xlink:to="us-gaap_RevenueFromRelatedParties_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromRelatedParties_lbl" xml:lang="en-US">Sales</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableRelatedParties" xlink:label="us-gaap_AccountsReceivableRelatedParties" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableRelatedParties" xlink:to="us-gaap_AccountsReceivableRelatedParties_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableRelatedParties_lbl" xml:lang="en-US">Accounts receivable related parties</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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.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/2022/elts/us-gaap-2022.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="fsi-20221231.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-20221231.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: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">Interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">Debt face amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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, beginning of period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromBankDebt" xlink:label="us-gaap_ProceedsFromBankDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromBankDebt" xlink:to="us-gaap_ProceedsFromBankDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromBankDebt_lbl" xml:lang="en-US">Plus: Proceeds from loans</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ProceedsFromLoanAcquiredFromAcquisition" xlink:label="FSI_ProceedsFromLoanAcquiredFromAcquisition" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ProceedsFromLoanAcquiredFromAcquisition" xlink:to="FSI_ProceedsFromLoanAcquiredFromAcquisition_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_ProceedsFromLoanAcquiredFromAcquisition_lbl" xml:lang="en-US">Plus: Loan acquired with acquisition of ENP Peru</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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, end of period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/verboseLabel" xlink:label="us-gaap_LongTermDebt_3_lbl" xml:lang="en-US">Total</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 debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFaceAmount" xlink:to="us-gaap_DebtInstrumentFaceAmount_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DebtInstrumentFaceAmount_2_lbl" xml:lang="en-US">Debt instrument face amount</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_3_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/2022/elts/us-gaap-2022.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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/label" xlink:label="us-gaap_InterestExpenseDebt_lbl" xml:lang="en-US">Interest expense debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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 Long term debt amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansPayable" xlink:label="us-gaap_LoansPayable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LoansPayable" xlink:to="us-gaap_LoansPayable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LoansPayable_lbl" xml:lang="en-US">First mortgage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentTax" xlink:label="FSI_CurrentTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CurrentTax" xlink:to="FSI_CurrentTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_CurrentTax_lbl" xml:lang="en-US">Current tax</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_IncomeTaxRecovery" xlink:label="FSI_IncomeTaxRecovery" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_IncomeTaxRecovery" xlink:to="FSI_IncomeTaxRecovery_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_IncomeTaxRecovery_lbl" xml:lang="en-US">Income tax recovery</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CurrentIncomeTaxExpenseBenefits" xlink:to="FSI_CurrentIncomeTaxExpenseBenefits_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="FSI_CurrentIncomeTaxExpenseBenefits_2_lbl" xml:lang="en-US">Current tax, total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2003/role/label" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="us-gaap_DeferredTaxAssetsGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl" xml:lang="en-US">Deferred tax assets gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsNet_lbl" xml:lang="en-US">Net deferred tax asset</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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/2009/role/negatedLabel" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne_lbl" xml:lang="en-US">Property, equipment and leaseholds</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" xlink:to="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="FSI_DeferredTaxAssetsPropertyPlantsAndEquipment_2_lbl" xml:lang="en-US">Property, equipment and leaseholds</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet_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/2022/elts/us-gaap-2022.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:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpense" xlink:label="FSI_CurrentIncomeTaxExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CurrentIncomeTaxExpense" xlink:to="FSI_CurrentIncomeTaxExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_CurrentIncomeTaxExpense_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_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_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLoss_2_lbl" xml:lang="en-US">Net income attributable to controlling interest</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_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareBasic_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_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareDiluted_2_lbl" xml:lang="en-US">Diluted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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, Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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">Stock vested compensation non vested</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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">Weighted average period expected to be recognized</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StatementEquityComponentsAxisipAxis" xlink:to="FSI_StatementEquityComponentsAxisipAxis_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="FSI_StatementEquityComponentsAxisipAxis_2_lbl" xml:lang="en-US">StatementEquityComponentsAxisipAxis [Axis]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByParent_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent_3_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:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Revenues_lbl" xml:lang="en-US">Sales</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsReceivableNetCurrent_2_lbl" xml:lang="en-US">Accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_3_lbl" xml:lang="en-US">Segment profit</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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: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">Total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/verboseLabel" xlink:label="us-gaap_NoncurrentAssets_lbl" xml:lang="en-US">Total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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_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, after Allowance for Credit Loss</link:label>
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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">Stock option exercise percent</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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_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_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_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_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_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_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_EnpPeruMember" xlink:to="FSI_EnpPeruMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_EnpPeruMember_doc" xml:lang="en-US">Enp Peru [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_IncreaseDecreaseInSharePercentage" xlink:to="FSI_IncreaseDecreaseInSharePercentage_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_IncreaseDecreaseInSharePercentage_doc" xml:lang="en-US">Increase decrease in share percentage.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RemainingInvestmentOwnedPercentage" xlink:to="FSI_RemainingInvestmentOwnedPercentage_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_RemainingInvestmentOwnedPercentage_doc" xml:lang="en-US">Remaining investment owned percentage.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TermDepositsPolicyTextBlock" xlink:to="FSI_TermDepositsPolicyTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TermDepositsPolicyTextBlock_doc" xml:lang="en-US">Term Deposits [Policy 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_InvestmentMember" xlink:to="FSI_InvestmentMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_InvestmentMember_doc" xml:lang="en-US">Investment [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_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_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_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:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_SoftwareMember" xlink:to="FSI_SoftwareMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SoftwareMember_doc" xml:lang="en-US">Software [Member]</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_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 Right of use Asset And Lease Liability [Table Text Block]</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_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_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_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_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_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_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_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_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_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_GainOnAcquisitionOfSubsidiary" xlink:to="FSI_GainOnAcquisitionOfSubsidiary_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_GainOnAcquisitionOfSubsidiary_doc" xml:lang="en-US">Gain on acquisition of subsidiary.</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_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_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_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_NanoChemMember" xlink:to="FSI_NanoChemMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_NanoChemMember_doc" xml:lang="en-US">Nano Chem [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_AdditionalEquityMethodInvestmentOwnershipPercentage" xlink:to="FSI_AdditionalEquityMethodInvestmentOwnershipPercentage_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_AdditionalEquityMethodInvestmentOwnershipPercentage_doc" xml:lang="en-US">Additional equity method investment ownership percentage.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_RemainningShareOutstanding" xlink:to="FSI_RemainningShareOutstanding_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_RemainningShareOutstanding_doc" xml:lang="en-US">Remainning share outstanding.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" xlink:to="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed long term debt.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" xlink:to="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed less purchase price.</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_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_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_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_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_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:loc xlink:type="locator" xlink:href="fsi-20221231.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_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_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: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_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_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_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_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_StockYardAndBankMember" xlink:to="FSI_StockYardAndBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockYardAndBankMember_doc" xml:lang="en-US">Stock Yard And Bank One [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockBankMember" xlink:to="FSI_StockBankMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockBankMember_doc" xml:lang="en-US">Stock Bank [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_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_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_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_ENPMendotaMember" xlink:to="FSI_ENPMendotaMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ENPMendotaMember_doc" xml:lang="en-US">ENP Mendota, LLC [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_ENPPeruOneMember" xlink:to="FSI_ENPPeruOneMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ENPPeruOneMember_doc" xml:lang="en-US">ENP Peru One [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_ENPPeruInvestmentsMember" xlink:to="FSI_ENPPeruInvestmentsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ENPPeruInvestmentsMember_doc" xml:lang="en-US">ENP Peru Investments [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_ProceedsFromLoanAcquiredFromAcquisition" xlink:to="FSI_ProceedsFromLoanAcquiredFromAcquisition_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ProceedsFromLoanAcquiredFromAcquisition_doc" xml:lang="en-US">Proceeds from loan acquired from acquisition.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustFiveMember" xlink:to="FSI_StockYardsBankTrustFiveMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockYardsBankTrustFiveMember_doc" xml:lang="en-US">Stock Yards Bank &amp; Trust Five [Member]</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">Deferred tax assets property plants and equipment.</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_TwoThousandThirtyOneYearMember" xlink:to="FSI_TwoThousandThirtyOneYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtyOneYearMember_doc" xml:lang="en-US">2031 [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_TwoThousandThirtyTwoYearMember" xlink:to="FSI_TwoThousandThirtyTwoYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtyTwoYearMember_doc" xml:lang="en-US">2032 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtyNineYearMember" xlink:to="FSI_TwoThousandThirtyNineYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtyNineYearMember_doc" xml:lang="en-US">2039 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandThirtySevenYearMember" xlink:to="FSI_TwoThousandThirtySevenYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandThirtySevenYearMember_doc" xml:lang="en-US">2037 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_TwoThousandFourtyYearMember" xlink:to="FSI_TwoThousandFourtyYearMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TwoThousandFourtyYearMember_doc" xml:lang="en-US">2040 [Member]</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_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_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_ConsultantMember" xlink:to="FSI_ConsultantMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_ConsultantMember_doc" xml:lang="en-US">Consultant [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_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: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">Deferred tax assets property plants 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_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_TPAMember" xlink:to="FSI_TPAMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_TPAMember_doc" xml:lang="en-US">TPA [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_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_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_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_SegmentMember" xlink:to="FSI_SegmentMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_SegmentMember_doc" xml:lang="en-US">Segment [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustTwoMember" xlink:to="FSI_StockYardsBankTrustTwoMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockYardsBankTrustTwoMember_doc" xml:lang="en-US">Stock Yards Bank &amp; Trust Two [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustThreeMember" xlink:to="FSI_StockYardsBankTrustThreeMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockYardsBankTrustThreeMember_doc" xml:lang="en-US">Stock Yards Bank &amp; Trust Three [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_StockYardsBankTrustFourMember" xlink:to="FSI_StockYardsBankTrustFourMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_StockYardsBankTrustFourMember_doc" xml:lang="en-US">Stock Yards Bank &amp; Trust Four [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CurrentIncomeTaxExpense" xlink:to="FSI_CurrentIncomeTaxExpense_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="FSI_CurrentIncomeTaxExpense_doc" xml:lang="en-US">Current income tax expense.</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_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_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_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 [Member]</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_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_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</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="FSI_CurrentIncomeTaxExpenseBenefits" xlink:to="FSI_CurrentIncomeTaxExpenseBenefits_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_CurrentIncomeTaxExpenseBenefits_3_lbl" xml:lang="en-US">CurrentIncomeTaxExpenseBenefits</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_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_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_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_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="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Buildings</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Land</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="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" xlink:to="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_3_lbl" xml:lang="en-US">BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" xlink:to="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_3_lbl" xml:lang="en-US">BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice</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_RevenueFromRelatedParties" xlink:to="us-gaap_RevenueFromRelatedParties_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromRelatedParties_2_lbl" xml:lang="en-US">Revenue from Related Parties</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebt_4_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_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_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_DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet_2_lbl" xml:lang="en-US">Deferred Tax Assets, Net</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FSI_CurrentIncomeTaxExpense" xlink:to="FSI_CurrentIncomeTaxExpense_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="FSI_CurrentIncomeTaxExpense_3_lbl" xml:lang="en-US">CurrentIncomeTaxExpense</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_2_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Revenues_2_lbl" xml:lang="en-US">Revenues</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:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncurrentAssets" xlink:to="us-gaap_NoncurrentAssets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncurrentAssets_2_lbl" xml:lang="en-US">Long-Lived Assets</link:label>
    </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>14
<FILENAME>fsi-20221231_pre.xml
<DESCRIPTION>XBRL PRESENTATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.18a -->
    <!-- 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-20221231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheets" xlink:href="fsi-20221231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BalanceSheetsParenthetical" xlink:href="fsi-20221231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome" xlink:href="fsi-20221231.xsd#StatementsOfIncomeAndComprehensiveIncome" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfCashFlows" xlink:href="fsi-20221231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StatementsOfStockholdersEquity" xlink:href="fsi-20221231.xsd#StatementsOfStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentation" xlink:href="fsi-20221231.xsd#BasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPolicies" xlink:href="fsi-20221231.xsd#SignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Leases" xlink:href="fsi-20221231.xsd#Leases" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivable" xlink:href="fsi-20221231.xsd#AccountsReceivable" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Inventories" xlink:href="fsi-20221231.xsd#Inventories" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipment" xlink:href="fsi-20221231.xsd#PropertyPlantEquipment" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Patents" xlink:href="fsi-20221231.xsd#Patents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets" xlink:href="fsi-20221231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDeposits" xlink:href="fsi-20221231.xsd#LongTermDeposits" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Investments" xlink:href="fsi-20221231.xsd#Investments" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCredit" xlink:href="fsi-20221231.xsd#Short-termLineOfCredit" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebt" xlink:href="fsi-20221231.xsd#LongTermDebt" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxes" xlink:href="fsi-20221231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShare" xlink:href="fsi-20221231.xsd#IncomePerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptions" xlink:href="fsi-20221231.xsd#StockOptions" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStock" xlink:href="fsi-20221231.xsd#CapitalStock" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterests" xlink:href="fsi-20221231.xsd#Non-controllingInterests" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependency" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEvents" xlink:href="fsi-20221231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesTables" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesTables" xlink:href="fsi-20221231.xsd#LeasesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/AccountsReceivableTables" xlink:href="fsi-20221231.xsd#AccountsReceivableTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InventoriesTables" xlink:href="fsi-20221231.xsd#InventoriesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipmentTables" xlink:href="fsi-20221231.xsd#PropertyPlantEquipmentTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsTables" xlink:href="fsi-20221231.xsd#PatentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="fsi-20221231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDepositsTables" xlink:href="fsi-20221231.xsd#LongTermDepositsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsTables" xlink:href="fsi-20221231.xsd#InvestmentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:href="fsi-20221231.xsd#LongTermDebtTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:href="fsi-20221231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareTables" xlink:href="fsi-20221231.xsd#IncomePerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsTables" xlink:href="fsi-20221231.xsd#StockOptionsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsTables" xlink:href="fsi-20221231.xsd#Non-controllingInterestsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyTables" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative" xlink:href="fsi-20221231.xsd#BasisOfPresentationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:href="fsi-20221231.xsd#ScheduleOfMethodOfDepreciationDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="fsi-20221231.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:href="fsi-20221231.xsd#SummaryOfRight-of-useAssetAndLeaseLiabilityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfUndiscountedRentPaymentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:href="fsi-20221231.xsd#LeasesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails" xlink:href="fsi-20221231.xsd#ScheduleOfAccountsReceivableDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfInventoryDetails" xlink:href="fsi-20221231.xsd#ScheduleOfInventoryDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfPropertyEquipmentAndLeaseholdsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative" xlink:href="fsi-20221231.xsd#PropertyPlantEquipmentDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfPatentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:href="fsi-20221231.xsd#ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/PatentsDetailsNarrative" xlink:href="fsi-20221231.xsd#PatentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLongTermDepositsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:href="fsi-20221231.xsd#ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:href="fsi-20221231.xsd#ScheduleOfEquityMethodInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:href="fsi-20221231.xsd#SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/InvestmentsDetailsNarrative" xlink:href="fsi-20221231.xsd#InvestmentsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:href="fsi-20221231.xsd#Short-termLineOfCreditDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLoanCovenantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails" xlink:href="fsi-20221231.xsd#ScheduleOfOutstandingBalanceLoanDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative" xlink:href="fsi-20221231.xsd#LongTermDebtDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:href="fsi-20221231.xsd#ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfReconciliationOfIncomeTaxesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfDeferredTaxAssetsLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative" xlink:href="fsi-20221231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:href="fsi-20221231.xsd#ScheduleOfBasicAndDilutedLossPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfAnti-dilutiveOptionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfAnti-dilutiveOptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative" xlink:href="fsi-20221231.xsd#IncomePerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails" xlink:href="fsi-20221231.xsd#ScheduleOfStockOptionActivitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfStockOptionFairValueAssumptionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:href="fsi-20221231.xsd#StockOptionsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/CapitalStockDetailsNarrative" xlink:href="fsi-20221231.xsd#CapitalStockDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfDistributionsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative" xlink:href="fsi-20221231.xsd#Non-controllingInterestsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails" xlink:href="fsi-20221231.xsd#ScheduleOfReportableSegmentsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:href="fsi-20221231.xsd#ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:href="fsi-20221231.xsd#ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:href="fsi-20221231.xsd#SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative" xlink:href="fsi-20221231.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/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.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/2022/dei-2022.xsd#dei_AuditorFirmId" xlink:label="loc_deiAuditorFirmId" />
      <link:presentationArc order="590" 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/2022/dei-2022.xsd#dei_AuditorName" xlink:label="loc_deiAuditorName" />
      <link:presentationArc order="600" 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/2022/dei-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAbstract" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" 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/2022/elts/us-gaap-2022.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-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="loc_us-gaapMinorityInterest" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaapIncomeStatementAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ProfessionalFees" xlink:label="loc_us-gaapProfessionalFees" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OtherGeneralExpense" xlink:label="loc_us-gaapOtherGeneralExpense" />
      <link:presentationArc order="80" 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-20221231.xsd#FSI_Consulting" xlink:label="loc_FSIConsulting" />
      <link:presentationArc order="90" 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/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaapInterestExpense" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapInterestExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense" />
      <link:presentationArc order="110" 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="fsi-20221231.xsd#FSI_InvestorRelationsAndTransferAgentFee" xlink:label="loc_FSIInvestorRelationsAndTransferAgentFee" />
      <link:presentationArc order="120" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TravelAndEntertainmentExpense" xlink:label="loc_us-gaapTravelAndEntertainmentExpense" />
      <link:presentationArc order="130" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaapOperatingLeaseExpense" />
      <link:presentationArc order="140" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
      <link:presentationArc order="150" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CommunicationsAndInformationTechnology" xlink:label="loc_us-gaapCommunicationsAndInformationTechnology" />
      <link:presentationArc order="160" 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="fsi-20221231.xsd#FSI_Commissions" xlink:label="loc_FSICommissions" />
      <link:presentationArc order="170" 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/2022/elts/us-gaap-2022.xsd#us-gaap_UtilitiesOperatingExpense" xlink:label="loc_us-gaapUtilitiesOperatingExpense" />
      <link:presentationArc order="180" 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-20221231.xsd#FSI_ShippingCost" xlink:label="loc_FSIShippingCost" />
      <link:presentationArc order="190" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" />
      <link:presentationArc order="200" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:presentationArc order="240" 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-20221231.xsd#FSI_PppLoanForgiveness" xlink:label="loc_FSIPppLoanForgiveness" />
      <link:presentationArc order="250" 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/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnInvestments" xlink:label="loc_us-gaapGainLossOnInvestments" />
      <link:presentationArc order="260" 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-20221231.xsd#FSI_GainOnAcquisition" xlink:label="loc_FSIGainOnAcquisition" />
      <link:presentationArc order="270" 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/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapInterestIncomeOther" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:presentationArc order="290" 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/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract" xlink:label="loc_us-gaapDeferredIncomeTaxesAndTaxCreditsAbstract" />
      <link:presentationArc order="300" 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/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredIncomeTaxesAndTaxCreditsAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpenseBenefits" xlink:label="loc_FSICurrentIncomeTaxExpenseBenefits" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredIncomeTaxesAndTaxCreditsAbstract" xlink:to="loc_FSICurrentIncomeTaxExpenseBenefits" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapNetIncomeLossAttributableToNoncontrollingInterest" />
      <link:presentationArc order="340" 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/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapEarningsPerShareBasic" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapEarningsPerShareDiluted" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss_2" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="loc_us-gaapProfitLoss_2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
      <link:presentationArc order="420" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
      <link:presentationArc order="430" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest" />
      <link:presentationArc order="440" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTax" />
      <link:presentationArc order="450" 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/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaapStatementOfCashFlowsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnInvestments" xlink:label="loc_us-gaapGainLossOnInvestments" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapGainLossOnInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_GainLossOnSaleOfLand" xlink:label="loc_FSIGainLossOnSaleOfLand" />
      <link:presentationArc order="100" 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-20221231.xsd#FSI_GainOnAcquisitionOfSubsidiary" xlink:label="loc_FSIGainOnAcquisitionOfSubsidiary" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_FSIGainOnAcquisitionOfSubsidiary" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments" />
      <link:presentationArc order="220" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfEquityMethodInvestments" xlink:label="loc_us-gaapProceedsFromSaleOfEquityMethodInvestments" />
      <link:presentationArc order="230" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:presentationArc order="240" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfOtherPropertyPlantAndEquipment" />
      <link:presentationArc order="250" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:presentationArc order="260" 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/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:presentationArc order="270" 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/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" />
      <link:presentationArc order="280" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:label="loc_us-gaapProceedsFromRepaymentsOfLinesOfCredit" />
      <link:presentationArc order="290" 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/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="loc_us-gaapRepaymentsOfLongTermDebt" />
      <link:presentationArc order="300" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:label="loc_us-gaapProceedsFromIssuanceOfLongTermDebt" />
      <link:presentationArc order="310" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="loc_us-gaapPaymentsOfFinancingCosts" />
      <link:presentationArc order="320" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="loc_us-gaapPaymentsToMinorityShareholders" />
      <link:presentationArc order="330" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaapProceedsFromIssuanceOfCommonStock" />
      <link:presentationArc order="340" 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/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:presentationArc order="350" 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/2022/elts/us-gaap-2022.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:presentationArc order="360" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:presentationArc order="370" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:presentationArc order="380" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2" />
      <link:presentationArc order="390" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" />
      <link:presentationArc order="400" 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/2022/elts/us-gaap-2022.xsd#us-gaap_Cash" xlink:label="loc_us-gaapCash" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCash" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaapShortTermInvestments" />
      <link:presentationArc order="420" 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/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaapSupplementalCashFlowInformationAbstract" />
      <link:presentationArc order="430" 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/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaapIncomeTaxesPaidNet" />
      <link:presentationArc order="440" 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/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaapInterestPaidNet" />
      <link:presentationArc order="450" 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-20221231.xsd#FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities" xlink:label="loc_FSIInventoryAdditionsInAccountsPayableAndAccruedLiabilities" />
      <link:presentationArc order="460" 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/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaapStatementOfStockholdersEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesAbstract" xlink:label="loc_us-gaapReceivablesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/PropertyPlantEquipment" xlink:title="00000012 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_DisclosureLongTermDepositsAbstract" xlink:label="loc_FSIDisclosureLongTermDepositsAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/IncomeTaxes" xlink:title="00000019 - Disclosure - INCOME TAXES">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000020 - Disclosure - INCOME PER SHARE">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000021 - Disclosure - STOCK OPTIONS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000022 - Disclosure - CAPITAL STOCK">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000023 - Disclosure - NON-CONTROLLING INTERESTS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000024 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000025 - Disclosure - SUBSEQUENT EVENTS">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaapSubsequentEventsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000026 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_TermDepositsPolicyTextBlock" xlink:label="loc_FSITermDepositsPolicyTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_FSITermDepositsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaapInventoryPolicyTextBlock" />
      <link:presentationArc order="20" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" xlink:label="loc_us-gaapPremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy" />
      <link:presentationArc order="30" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentPolicyTextBlock" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="loc_us-gaapImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
      <link:presentationArc order="50" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="loc_us-gaapForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
      <link:presentationArc order="60" 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/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="loc_us-gaapRevenueFromContractWithCustomerPolicyTextBlock" />
      <link:presentationArc order="70" 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-20221231.xsd#FSI_StockIssuedInExchangeForServicesPolicyTextBlock" xlink:label="loc_FSIStockIssuedInExchangeForServicesPolicyTextBlock" />
      <link:presentationArc order="80" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationRelatedCostsPolicyTextBlock" xlink:label="loc_us-gaapCompensationRelatedCostsPolicyTextBlock" />
      <link:presentationArc order="90" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:label="loc_us-gaapComprehensiveIncomePolicyPolicyTextBlock" />
      <link:presentationArc order="100" 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/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="loc_us-gaapEarningsPerSharePolicyTextBlock" />
      <link:presentationArc order="110" 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/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaapUseOfEstimates" />
      <link:presentationArc order="120" 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/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaapFairValueOfFinancialInstrumentsPolicy" />
      <link:presentationArc order="130" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="loc_us-gaapCommitmentsAndContingenciesPolicyTextBlock" />
      <link:presentationArc order="140" 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/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaapIncomeTaxPolicyTextBlock" />
      <link:presentationArc order="150" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="loc_us-gaapConcentrationRiskCreditRisk" />
      <link:presentationArc order="160" 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/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsPolicy" xlink:label="loc_us-gaapEquityMethodInvestmentsPolicy" />
      <link:presentationArc order="170" 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/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsPolicyTextBlock" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="loc_us-gaapNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" />
      <link:presentationArc order="190" 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="00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="00000028 - Disclosure - LEASES (Tables)">
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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="00000029 - Disclosure - ACCOUNTS RECEIVABLE (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesAbstract" xlink:label="loc_us-gaapReceivablesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000030 - Disclosure - INVENTORIES (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/PropertyPlantEquipmentTables" xlink:title="00000031 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000032 - Disclosure - PATENTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000033 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/LongTermDepositsTables" xlink:title="00000034 - Disclosure - LONG TERM DEPOSITS (Tables)">
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DisclosureLongTermDepositsAbstract" xlink:label="loc_FSIDisclosureLongTermDepositsAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="00000035 - Disclosure - INVESTMENTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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-20221231.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="fsi-20221231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsTextBlock" xlink:label="loc_us-gaapEquityMethodInvestmentsTextBlock" />
      <link:presentationArc order="10" 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/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnInvestmentsTextBlock" xlink:label="loc_us-gaapGainLossOnInvestmentsTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapGainLossOnInvestmentsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LongTermDebtTables" xlink:title="00000036 - Disclosure - LONG TERM DEBT (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ScheduleOfLoanCovenantsTableTextBlock" xlink:label="loc_FSIScheduleOfLoanCovenantsTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_FSIScheduleOfLoanCovenantsTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="loc_us-gaapScheduleOfDebtInstrumentsTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfDebtInstrumentsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/IncomeTaxesTables" xlink:title="00000037 - Disclosure - INCOME TAXES (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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="00000038 - Disclosure - INCOME PER SHARE (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000039 - Disclosure - STOCK OPTIONS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000040 - Disclosure - NON-CONTROLLING INTERESTS (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="00000041 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000042 - Disclosure - BASIS OF PRESENTATION (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember" />
      <link:presentationArc order="20" 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-20221231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember" />
      <link:presentationArc order="40" 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="fsi-20221231.xsd#FSI_EnpPeruMember" xlink:label="loc_FSIEnpPeruMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpPeruMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_UnrelatedPartyMember" xlink:label="loc_FSIUnrelatedPartyMember" />
      <link:presentationArc order="30" 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/2022/elts/srt-2022.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="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="40" 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/2022/elts/srt-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_IncreaseDecreaseInSharePercentage" xlink:label="loc_FSIIncreaseDecreaseInSharePercentage" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIIncreaseDecreaseInSharePercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_RemainingInvestmentOwnedPercentage" xlink:label="loc_FSIRemainingInvestmentOwnedPercentage" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_FSIRemainingInvestmentOwnedPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails" xlink:title="00000043 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember" />
      <link:presentationArc order="20" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember" />
      <link:presentationArc order="30" 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-20221231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="loc_us-gaapBuildingAndBuildingImprovementsMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapBuildingAndBuildingImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember" />
      <link:presentationArc order="60" 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/2022/elts/us-gaap-2022.xsd#us-gaap_AutomobilesMember" xlink:label="loc_us-gaapAutomobilesMember" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaapPatentsMember" />
      <link:presentationArc order="80" 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/2022/elts/us-gaap-2022.xsd#us-gaap_TechnologyEquipmentMember" xlink:label="loc_us-gaapTechnologyEquipmentMember" />
      <link:presentationArc order="90" 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/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember" />
      <link:presentationArc order="100" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaapCustomerRelationshipsMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapCustomerRelationshipsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_SoftwareMember" xlink:label="loc_FSISoftwareMember" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_FSISoftwareMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="00000044 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ShippingAndHandlingMember" xlink:label="loc_us-gaapShippingAndHandlingMember" />
      <link:presentationArc order="20" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_ThreePrimaryCustomersMember" xlink:label="loc_FSIThreePrimaryCustomersMember" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerMember" xlink:label="loc_us-gaapRevenueFromContractWithCustomerMember" />
      <link:presentationArc order="50" 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/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember" />
      <link:presentationArc order="90" 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/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_InvestmentMember" xlink:label="loc_FSIInvestmentMember" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIInvestmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Deposits" xlink:label="loc_us-gaapDeposits" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapDeposits" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPayableCurrentAndNoncurrent" xlink:label="loc_us-gaapInterestPayableCurrentAndNoncurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInterestPayableCurrentAndNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_OtherTermDeposit" xlink:label="loc_FSIOtherTermDeposit" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_FSIOtherTermDeposit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold" />
      <link:presentationArc order="50" 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-20221231.xsd#FSI_ConcentrationRiskThresholdPercentage" xlink:label="loc_FSIConcentrationRiskThresholdPercentage" />
      <link:presentationArc order="60" 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/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities" xlink:label="loc_us-gaapEquityMethodInvestmentDescriptionOfPrincipalActivities" />
      <link:presentationArc order="80" 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="00000045 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)">
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAssetAmortizationExpense" />
      <link:presentationArc order="10" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset_2" />
      <link:presentationArc order="20" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability" />
      <link:presentationArc order="30" 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-20221231.xsd#FSI_LeaseInterestExpense" xlink:label="loc_FSILeaseInterestExpense" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaapOperatingLeasePayments" />
      <link:presentationArc order="50" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability_2" />
      <link:presentationArc order="60" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
      <link:presentationArc order="80" 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/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability_3" />
      <link:presentationArc order="90" 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="00000046 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:presentationArc order="30" 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/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.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/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/LeasesDetailsNarrative" xlink:title="00000047 - Disclosure - LEASES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DisclosureLeasesAbstract" xlink:label="loc_FSIDisclosureLeasesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000048 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ReceivablesAbstract" xlink:label="loc_us-gaapReceivablesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/ScheduleOfInventoryDetails" xlink:title="00000049 - Disclosure - SCHEDULE OF INVENTORY (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsAndSupplies" xlink:label="loc_us-gaapInventoryRawMaterialsAndSupplies" />
      <link:presentationArc order="10" 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/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:presentationArc order="20" 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="00000050 - Disclosure - SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="loc_us-gaapBuildingAndBuildingImprovementsMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapBuildingAndBuildingImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaapMachineryAndEquipmentMember" />
      <link:presentationArc order="50" 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-20221231.xsd#FSI_TrailerMember" xlink:label="loc_FSITrailerMember" />
      <link:presentationArc order="60" 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-20221231.xsd#FSI_BoatMember" xlink:label="loc_FSIBoatMember" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember" />
      <link:presentationArc order="80" 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/2022/elts/us-gaap-2022.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaapDevelopedTechnologyRightsMember" />
      <link:presentationArc order="90" 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/2022/elts/us-gaap-2022.xsd#us-gaap_LandMember" xlink:label="loc_us-gaapLandMember" />
      <link:presentationArc order="100" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/PropertyPlantEquipmentDetailsNarrative" xlink:title="00000051 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfPatentsDetails" xlink:title="00000052 - Disclosure - SCHEDULE OF PATENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails" xlink:title="00000053 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill_2" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill_3" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapIndefiniteLivedIntangibleAssetsExcludingGoodwill_3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails" xlink:title="00000054 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/PatentsDetailsNarrative" xlink:title="00000055 - Disclosure - PATENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/us-gaap/2022/elts/us-gaap-2022.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="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaapPatentsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapPatentsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_FSIIncreaseInCurrencyConversion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapAmortizationOfIntangibleAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails" xlink:title="00000056 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)">
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DisclosureLongTermDepositsAbstract" xlink:label="loc_FSIDisclosureLongTermDepositsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails" xlink:title="00000057 - Disclosure - SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" />
      <link:presentationArc order="40" 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/negatedPeriodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" xlink:label="loc_FSIBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_FSIBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" xlink:label="loc_FSIBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_FSIBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_InvestmentEliminatedUponConsolidation" xlink:label="loc_FSIInvestmentEliminatedUponConsolidation" />
      <link:presentationArc order="80" 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="fsi-20221231.xsd#FSI_GainOnAcquisitionOfSubsidiary" xlink:label="loc_FSIGainOnAcquisitionOfSubsidiary" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_FSIGainOnAcquisitionOfSubsidiary" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails" xlink:title="00000058 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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-20221231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember" />
      <link:presentationArc order="60" 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-20221231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember" />
      <link:presentationArc order="110" 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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_InvestmentEliminatedUponConsolidation" xlink:label="loc_FSIInvestmentEliminatedUponConsolidation" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIInvestmentEliminatedUponConsolidation" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestments" xlink:label="loc_us-gaapEquityMethodInvestments_2" />
      <link:presentationArc order="40" 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-20221231.xsd#FSI_AdditionalPaymentInvestment" xlink:label="loc_FSIAdditionalPaymentInvestment" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_FSIAdditionalPaymentInvestment" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails" xlink:title="00000059 - 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/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/dei-2022.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/2022/dei-2022.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-20221231.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-20221231.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/InvestmentsDetailsNarrative" xlink:title="00000060 - Disclosure - INVESTMENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsAndJointVenturesAbstract" xlink:label="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:label="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityMethodInvestmentsAndJointVenturesAbstract" xlink:to="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:label="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpPeruInvestmentsLlcMember" xlink:label="loc_FSIEnpPeruInvestmentsLlcMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIEnpPeruInvestmentsLlcMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_NanoChemMember" xlink:label="loc_FSINanoChemMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSINanoChemMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpInvestmentsLLCMember" xlink:label="loc_FSIEnpInvestmentsLLCMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIEnpInvestmentsLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_FSIFloridaBasedLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_srtOwnershipAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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-20221231.xsd#FSI_EnpPeruMember" xlink:label="loc_FSIEnpPeruMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_FSIEnpPeruMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpnvestmentsLlcMember" xlink:label="loc_FSIEnpnvestmentsLlcMember" />
      <link:presentationArc order="60" 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.sec.gov/dei/2022/dei-2022.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-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_deiLegalEntityAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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-20221231.xsd#FSI_AppliedHoldingCorpMember" xlink:label="loc_FSIAppliedHoldingCorpMember" />
      <link:presentationArc order="70" 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-20221231.xsd#FSI_TrioOpportunityCorpMember" xlink:label="loc_FSITrioOpportunityCorpMember" />
      <link:presentationArc order="90" 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-20221231.xsd#FSI_LygosIncMember" xlink:label="loc_FSILygosIncMember" />
      <link:presentationArc order="170" 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/2022/elts/us-gaap-2022.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-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_us-gaapStatementClassOfStockAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_CommonClassBMember" xlink:label="loc_us-gaapCommonClassBMember" />
      <link:presentationArc order="100" 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/2022/elts/us-gaap-2022.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-gaapScheduleOfEquityMethodInvestmentsTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="50" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_FloridaBasedLLCMember" xlink:label="loc_FSIFloridaBasedLLCMember_2" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIFloridaBasedLLCMember_2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_AdditionalEquityMethodInvestmentOwnershipPercentage" xlink:label="loc_FSIAdditionalEquityMethodInvestmentOwnershipPercentage" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_FSIAdditionalEquityMethodInvestmentOwnershipPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_RemainningShareOutstanding" xlink:label="loc_FSIRemainningShareOutstanding" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_FSIRemainningShareOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Cash" xlink:label="loc_us-gaapCash" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapCash" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:label="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapInvestmentCompanyNetAssetsFromOperationsIncreaseDecrease" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaapDebtInstrumentMaturityDate" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapDebtInstrumentMaturityDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesNewIssues" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaapSharePrice" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapSharePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromRelatedParties" xlink:label="loc_us-gaapRevenueFromRelatedParties" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapRevenueFromRelatedParties" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableRelatedParties" xlink:label="loc_us-gaapAccountsReceivableRelatedParties" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapAccountsReceivableRelatedParties" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfEquityMethodInvestmentsLineItems" xlink:to="loc_us-gaapPaymentsToAcquireInvestments" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative" xlink:title="00000061 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember" />
      <link:presentationArc order="10" 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-20221231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember" />
      <link:presentationArc order="100" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.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/srt/2022/elts/srt-2022.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="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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/2022/elts/srt-2022.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.sec.gov/dei/2022/dei-2022.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="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="50" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_HarrisBankMember" xlink:label="loc_FSIHarrisBankMember_2" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIHarrisBankMember_2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardAndBankMember" xlink:label="loc_FSIStockYardAndBankMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIStockYardAndBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockBankMember" xlink:label="loc_FSIStockBankMember" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLenderDomain" xlink:to="loc_FSIStockBankMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="60" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember" />
      <link:presentationArc order="100" 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/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaapCreditFacilityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapCreditFacilityAxis" order="70" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="loc_us-gaapRevolvingCreditFacilityMember" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditFacilityDomain" xlink:to="loc_us-gaapRevolvingCreditFacilityMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod" />
      <link:presentationArc order="10" 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/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateAtPeriodEnd" />
      <link:presentationArc order="20" 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="fsi-20221231.xsd#FSI_LoanGuaranteedRate" xlink:label="loc_FSILoanGuaranteedRate" />
      <link:presentationArc order="30" 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/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="loc_us-gaapLinesOfCreditCurrent" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermBorrowings" xlink:label="loc_us-gaapShortTermBorrowings" />
      <link:presentationArc order="50" 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="fsi-20221231.xsd#FSI_EligiblePercentageOfDomesticAccountsReceivable" xlink:label="loc_FSIEligiblePercentageOfDomesticAccountsReceivable" />
      <link:presentationArc order="60" 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-20221231.xsd#FSI_PercentageOfForeignAccountsReceivableOfInventory" xlink:label="loc_FSIPercentageOfForeignAccountsReceivableOfInventory" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" 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/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaapDebtInstrumentFaceAmount" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentFaceAmount" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails" xlink:title="00000062 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromBankDebt" xlink:label="loc_us-gaapProceedsFromBankDebt" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapProceedsFromBankDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ProceedsFromLoanAcquiredFromAcquisition" xlink:label="loc_FSIProceedsFromLoanAcquiredFromAcquisition" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_FSIProceedsFromLoanAcquiredFromAcquisition" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000063 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_MidlandStatesBankMember" xlink:label="loc_FSIMidlandStatesBankMember" />
      <link:presentationArc order="10" 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-20221231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember" />
      <link:presentationArc order="30" 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-20221231.xsd#FSI_PaycheckProtectionProgramOneMember" xlink:label="loc_FSIPaycheckProtectionProgramOneMember" />
      <link:presentationArc order="50" 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-20221231.xsd#FSI_MidlandStatesBankOneMember" xlink:label="loc_FSIMidlandStatesBankOneMember" />
      <link:presentationArc order="70" 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-20221231.xsd#FSI_MidlandStatesBankTwoMember" xlink:label="loc_FSIMidlandStatesBankTwoMember" />
      <link:presentationArc order="90" 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-20221231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember" />
      <link:presentationArc order="110" 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="fsi-20221231.xsd#FSI_StockYardsBankTrustTwoMember" xlink:label="loc_FSIStockYardsBankTrustTwoMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustTwoMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustThreeMember" xlink:label="loc_FSIStockYardsBankTrustThreeMember" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustThreeMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustFourMember" xlink:label="loc_FSIStockYardsBankTrustFourMember" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustFourMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StockYardsBankTrustFiveMember" xlink:label="loc_FSIStockYardsBankTrustFiveMember" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_FSIStockYardsBankTrustFiveMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000064 - Disclosure - LONG TERM DEBT (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_MidlandBankMember" xlink:label="loc_FSIMidlandBankMember" />
      <link:presentationArc order="10" 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-20221231.xsd#FSI_PaycheckProtectionProgramMember" xlink:label="loc_FSIPaycheckProtectionProgramMember" />
      <link:presentationArc order="40" 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-20221231.xsd#FSI_FordMotorCreditCompanyMember" xlink:label="loc_FSIFordMotorCreditCompanyMember" />
      <link:presentationArc order="60" 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-20221231.xsd#FSI_StockYardsBankTrustMember" xlink:label="loc_FSIStockYardsBankTrustMember" />
      <link:presentationArc order="230" 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/2022/dei-2022.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="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.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-20221231.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="fsi-20221231.xsd#FSI_NanoChemSolutionsIncMember" xlink:label="loc_FSINanoChemSolutionsIncMember" />
      <link:presentationArc order="40" 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-20221231.xsd#FSI_ENPMendotaMember" xlink:label="loc_FSIENPMendotaMember" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIENPMendotaMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_EnpRealtyLLCMember" xlink:label="loc_FSIEnpRealtyLLCMember" />
      <link:presentationArc order="230" 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-20221231.xsd#FSI_NanoChemMember" xlink:label="loc_FSINanoChemMember" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSINanoChemMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ENPPeruOneMember" xlink:label="loc_FSIENPPeruOneMember" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIENPPeruOneMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_ENPPeruInvestmentsMember" xlink:label="loc_FSIENPPeruInvestmentsMember" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiEntityDomain" xlink:to="loc_FSIENPPeruInvestmentsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_TermLoanMember" xlink:label="loc_FSITermLoanMember" />
      <link:presentationArc order="80" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_PrimeRateMember" xlink:label="loc_us-gaapPrimeRateMember" />
      <link:presentationArc order="90" 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/us-gaap/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateStatedPercentage" />
      <link:presentationArc order="10" 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/terseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm" xlink:label="loc_us-gaapDebtInstrumentTerm" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtInstrumentTerm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaapInterestExpenseDebt" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapInterestExpenseDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDefaultLongtermDebtAmount" xlink:label="loc_us-gaapDebtDefaultLongtermDebtAmount" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapDebtDefaultLongtermDebtAmount" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansPayable" xlink:label="loc_us-gaapLoansPayable" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapLoansPayable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaapInterestExpense" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShortTermDebtLineItems" xlink:to="loc_us-gaapInterestExpense" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails" xlink:title="00000065 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_CurrentTax" xlink:label="loc_FSICurrentTax" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_FSICurrentTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_IncomeTaxRecovery" xlink:label="loc_FSIIncomeTaxRecovery" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_FSIIncomeTaxRecovery" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpenseBenefits" xlink:label="loc_FSICurrentIncomeTaxExpenseBenefits" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_FSICurrentIncomeTaxExpenseBenefits" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" />
      <link:presentationArc order="60" 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/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredForeignIncomeTaxExpenseBenefit" />
      <link:presentationArc order="80" 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/2022/elts/us-gaap-2022.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-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/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="100" 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="00000066 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000067 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaapDeferredTaxAssetsGross" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapDeferredTaxAssetsValuationAllowance" />
      <link:presentationArc order="40" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaapDeferredTaxAssetsNet" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInvestments" xlink:label="loc_us-gaapDeferredTaxAssetsInvestments" />
      <link:presentationArc order="60" 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-20221231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne" xlink:label="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipmentOne" />
      <link:presentationArc order="70" 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/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_DeferredTaxAssetsPropertyPlantsAndEquipment" xlink:label="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipment_2" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSIDeferredTaxAssetsPropertyPlantsAndEquipment_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsDerivativeInstruments" xlink:label="loc_us-gaapDeferredTaxAssetsDerivativeInstruments" />
      <link:presentationArc order="90" 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-20221231.xsd#FSI_DeferredTaxAssetNotRecognized" xlink:label="loc_FSIDeferredTaxAssetNotRecognized" />
      <link:presentationArc order="100" 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaapDeferredTaxAssetsLiabilitiesNet" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_us-gaapDeferredTaxAssetsLiabilitiesNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails" xlink:title="00000068 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.xsd#FSI_TwoThousandThirtyTaxYearMember" xlink:label="loc_FSITwoThousandThirtyTaxYearMember" />
      <link:presentationArc order="10" 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-20221231.xsd#FSI_TwoThousandThirtyOneYearMember" xlink:label="loc_FSITwoThousandThirtyOneYearMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyOneYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtyTwoYearMember" xlink:label="loc_FSITwoThousandThirtyTwoYearMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyTwoYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtySevenYearMember" xlink:label="loc_FSITwoThousandThirtySevenYearMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtySevenYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandThirtyNineYearMember" xlink:label="loc_FSITwoThousandThirtyNineYearMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandThirtyNineYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_TwoThousandFourtyYearMember" xlink:label="loc_FSITwoThousandFourtyYearMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTaxPeriodDomain" xlink:to="loc_FSITwoThousandFourtyYearMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000069 - Disclosure - INCOME TAXES (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember" />
      <link:presentationArc order="30" 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="fsi-20221231.xsd#FSI_CurrentIncomeTaxExpense" xlink:label="loc_FSICurrentIncomeTaxExpense" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingLossCarryforwardsLineItems" xlink:to="loc_FSICurrentIncomeTaxExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards" />
      <link:presentationArc order="10" 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="00000070 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapEarningsPerShareBasic" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapEarningsPerShareDiluted" 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="00000071 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000072 - Disclosure - INCOME PER SHARE (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000073 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" 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="00000074 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="30" 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/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="40" 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/2022/elts/us-gaap-2022.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-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/StockOptionsDetailsNarrative" xlink:title="00000075 - Disclosure - STOCK OPTIONS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_CanadaRevenueAgencyMember" xlink:label="loc_us-gaapCanadaRevenueAgencyMember" />
      <link:presentationArc order="70" 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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000076 - Disclosure - CAPITAL STOCK (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionMember" xlink:label="loc_us-gaapStockOptionMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_us-gaapStockOptionMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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-gaapOffsettingAssetsTable" xlink:to="loc_srtTitleOfIndividualAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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-20221231.xsd#FSI_ConsultantMember" xlink:label="loc_FSIConsultantMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_FSIConsultantMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="00000077 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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-20221231.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="00000078 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestAbstract" xlink:label="loc_us-gaapNoncontrollingInterestAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.xsd#FSI_StatementEquityComponentsAxisipAxis" xlink:label="loc_FSIStatementEquityComponentsAxisipAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_FSIStatementEquityComponentsAxisipAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.xsd#FSI_StatementEquityComponentsAxisipDomain" xlink:label="loc_FSIStatementEquityComponentsAxisipDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIStatementEquityComponentsAxisipAxis" xlink:to="loc_FSIStatementEquityComponentsAxisipDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="loc_us-gaapNoncontrollingInterestMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_FSIStatementEquityComponentsAxisipDomain" xlink:to="loc_us-gaapNoncontrollingInterestMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="loc_us-gaapNoncontrollingInterestMember_2" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapNoncontrollingInterestMember_2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapRevenues" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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-gaapConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" 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="00000079 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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-20221231.xsd#FSI_TPAMember" xlink:label="loc_FSITPAMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_FSITPAMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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="fsi-20221231.xsd#FSI_SegmentMember" xlink:label="loc_FSISegmentMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_FSISegmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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/2022/elts/us-gaap-2022.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="00000080 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/country-2022.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-20221231.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/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails" xlink:title="00000081 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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/2022/country-2022.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/2022/country-2022.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/2022/elts/us-gaap-2022.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" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative" xlink:title="00000082 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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/2022/elts/us-gaap-2022.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/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="fsi-20221231.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="00000083 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaapSubsequentEventsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/srt-2022.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/2022/elts/srt-2022.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-20221231.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="fsi-20221231.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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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/2022/elts/us-gaap-2022.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>15
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314715120">
<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, 2022</div></th>
<th class="th"><div>Mar. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<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="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2022<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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2022<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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSEAMER<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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">$ 19,343,103<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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,435,532<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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>ISO 3166-1 alpha-2 country code.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>16
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264316216336">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Cash', window );">Cash</a></td>
<td class="nump">$ 6,115,099<span></span>
</td>
<td class="nump">$ 5,710,227<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepositsAssetsCurrent', window );">Term deposits</a></td>
<td class="nump">700,000<span></span>
</td>
<td class="nump">1,025,347<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable (Note 4)</a></td>
<td class="nump">9,449,857<span></span>
</td>
<td class="nump">7,129,329<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories (Note 5)</a></td>
<td class="nump">14,419,430<span></span>
</td>
<td class="nump">9,502,005<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">310,297<span></span>
</td>
<td class="nump">442,161<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">30,994,683<span></span>
</td>
<td class="nump">23,809,069<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, equipment and leaseholds, net (Note 6)</a></td>
<td class="nump">9,709,288<span></span>
</td>
<td class="nump">4,931,713<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_FiniteLivedPatentGross', window );">Patents (Note 7)</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">13,699<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of use assets (Note 3)</a></td>
<td class="nump">167,222<span></span>
</td>
<td class="nump">217,267<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets (Note 8)</a></td>
<td class="nump">2,440,000<span></span>
</td>
<td class="nump">2,600,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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Investments (Note 10)</a></td>
<td class="nump">5,458,895<span></span>
</td>
<td class="nump">5,424,010<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred tax asset (Note 13)</a></td>
<td class="nump">274,289<span></span>
</td>
<td class="nump">12,697<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total Assets</a></td>
<td class="nump">51,587,192<span></span>
</td>
<td class="nump">39,551,270<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">873,904<span></span>
</td>
<td class="nump">1,283,486<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">959,856<span></span>
</td>
<td class="nump">457,062<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenueCurrent', window );">Deferred revenue</a></td>
<td class="nump">387,763<span></span>
</td>
<td class="nump">349,004<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Income taxes payable</a></td>
<td class="nump">4,486,350<span></span>
</td>
<td class="nump">4,561,396<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Short term line of credit (Note 11)</a></td>
<td class="nump">2,818,591<span></span>
</td>
<td class="nump">2,300,819<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current portion of lease liability (Note 3)</a></td>
<td class="nump">58,080<span></span>
</td>
<td class="nump">77,715<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current portion of long term debt (Note 12)</a></td>
<td class="nump">717,612<span></span>
</td>
<td class="nump">793,574<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">10,302,156<span></span>
</td>
<td class="nump">9,823,056<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease liability (Note 3)</a></td>
<td class="nump">109,142<span></span>
</td>
<td class="nump">139,552<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income tax liability (Note 13)</a></td>
<td class="nump">500,459<span></span>
</td>
<td class="nump">310,162<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long term debt (Note 12)</a></td>
<td class="nump">5,436,465<span></span>
</td>
<td class="nump">1,573,024<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total Liabilities</a></td>
<td class="nump">16,348,222<span></span>
</td>
<td class="nump">11,845,794<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract', 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Capital stock (Note 16) 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,426,260 (2021: 12,355,246) common shares</a></td>
<td class="nump">12,426<span></span>
</td>
<td class="nump">12,355<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Capital in excess of par value</a></td>
<td class="nump">17,523,345<span></span>
</td>
<td class="nump">16,983,648<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive loss</a></td>
<td class="num">(805,799)<span></span>
</td>
<td class="num">(775,730)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Accumulated earnings</a></td>
<td class="nump">15,903,964<span></span>
</td>
<td class="nump">8,882,360<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders&#8217; equity &#8211; controlling interest</a></td>
<td class="nump">32,633,936<span></span>
</td>
<td class="nump">25,102,633<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Non-controlling interests (Note 17)</a></td>
<td class="nump">2,605,034<span></span>
</td>
<td class="nump">2,602,843<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Total Stockholders&#8217; Equity</a></td>
<td class="nump">35,238,970<span></span>
</td>
<td class="nump">27,705,476<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total Liabilities and Stockholders&#8217; Equity</a></td>
<td class="nump">$ 51,587,192<span></span>
</td>
<td class="nump">$ 39,551,270<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finite lived patent gross.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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(30)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 45<br> -Paragraph 1<br> -URI https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<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 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-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 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-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 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<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 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<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 https://asc.fasb.org/extlink&amp;oid=126975872&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 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<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)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 21<br> -URI https://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631419-115840<br><br>Reference 4: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<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(10))<br> -URI https://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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8813-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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(6))<br> -URI https://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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6904-107765<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="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(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=6387103&amp;loc=d3e6435-108320<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 05<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126905020&amp;loc=d3e5879-108316<br><br>Reference 4: 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(7))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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> -URI https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://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 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126987489&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 https://asc.fasb.org/extlink&amp;oid=126987489&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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126983759&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 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(3)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL125981372-237846<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<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 (f)(2)<br> -URI https://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 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 25: 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 https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4568447-111683<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<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 1<br> -Subparagraph (b)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 28: 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 https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract</td>
</tr>
<tr>
<td style="padding-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_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>17
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314878608">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">12,426,260<span></span>
</td>
<td class="nump">12,355,246<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding</a></td>
<td class="nump">12,426,260<span></span>
</td>
<td class="nump">12,355,246<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>18
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264316223360">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 45,840,469<span></span>
</td>
<td class="nump">$ 34,416,335<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales (Note 6, 7 &amp; 8)</a></td>
<td class="nump">31,971,596<span></span>
</td>
<td class="nump">23,019,824<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">13,868,873<span></span>
</td>
<td class="nump">11,396,511<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SalariesAndWages', window );">Wages</a></td>
<td class="nump">2,537,783<span></span>
</td>
<td class="nump">2,321,285<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OfficersCompensation', window );">Administrative salaries and benefits</a></td>
<td class="nump">1,032,394<span></span>
</td>
<td class="nump">883,460<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralInsuranceExpense', window );">Insurance</a></td>
<td class="nump">683,272<span></span>
</td>
<td class="nump">581,187<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfessionalFees', window );">Professional fees</a></td>
<td class="nump">660,821<span></span>
</td>
<td class="nump">285,424<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherGeneralExpense', window );">Office and miscellaneous</a></td>
<td class="nump">350,126<span></span>
</td>
<td class="nump">269,459<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_Consulting', window );">Consulting</a></td>
<td class="nump">312,171<span></span>
</td>
<td class="nump">320,759<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="nump">292,949<span></span>
</td>
<td class="nump">199,930<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Advertising and promotion</a></td>
<td class="nump">182,609<span></span>
</td>
<td class="nump">172,185<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_InvestorRelationsAndTransferAgentFee', window );">Investor relations and transfer agent fee</a></td>
<td class="nump">179,505<span></span>
</td>
<td class="nump">94,256<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TravelAndEntertainmentExpense', window );">Travel</a></td>
<td class="nump">171,369<span></span>
</td>
<td class="nump">107,894<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Lease expense</a></td>
<td class="nump">149,446<span></span>
</td>
<td class="nump">382,663<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research</a></td>
<td class="nump">99,275<span></span>
</td>
<td class="nump">116,411<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommunicationsAndInformationTechnology', window );">Telecommunications</a></td>
<td class="nump">42,098<span></span>
</td>
<td class="nump">45,482<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_Commissions', window );">Commissions</a></td>
<td class="nump">30,732<span></span>
</td>
<td class="nump">62,632<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UtilitiesOperatingExpense', window );">Utilities</a></td>
<td class="nump">29,517<span></span>
</td>
<td class="nump">21,523<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_ShippingCost', window );">Shipping</a></td>
<td class="nump">23,469<span></span>
</td>
<td class="nump">16,567<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Currency exchange</a></td>
<td class="nump">23,091<span></span>
</td>
<td class="nump">25,091<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Bad debt expense</a></td>
<td class="nump">17,869<span></span>
</td>
<td class="nump">6,979<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">6,818,496<span></span>
</td>
<td class="nump">5,913,187<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">7,050,377<span></span>
</td>
<td class="nump">5,483,324<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_GainLossOnSaleOfLand', window );">Gain on sale of land (Note 6)</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">44,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="Show.showAR( this, 'defref_FSI_PppLoanForgiveness', window );">PPP loan forgiveness (Note 12)</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">537,960<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnInvestments', window );">Gain on investments (Note 10)</a></td>
<td class="nump">341,424<span></span>
</td>
<td class="nump">507,143<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_GainOnAcquisition', window );">Gain on previously held equity interest (Note 10)</a></td>
<td class="nump">335,051<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="Show.showAR( this, 'defref_us-gaap_InterestIncomeOther', window );">Interest income</a></td>
<td class="nump">132,233<span></span>
</td>
<td class="nump">77,999<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income tax</a></td>
<td class="nump">7,859,085<span></span>
</td>
<td class="nump">6,650,756<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract', window );"><strong>Income taxes (Note 13)</strong></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="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax recovery (expense)</a></td>
<td class="nump">71,295<span></span>
</td>
<td class="num">(363,317)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_CurrentIncomeTaxExpenseBenefits', window );">Current income tax expense</a></td>
<td class="num">(217,151)<span></span>
</td>
<td class="num">(1,993,182)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income for the year</a></td>
<td class="nump">7,713,229<span></span>
</td>
<td class="nump">4,294,257<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Net income attributable to non-controlling interests</a></td>
<td class="num">(691,625)<span></span>
</td>
<td class="num">(845,095)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to controlling interest</a></td>
<td class="nump">$ 7,021,604<span></span>
</td>
<td class="nump">$ 3,449,162<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Income per share (basic) (Note 14)</a></td>
<td class="nump">$ 0.57<span></span>
</td>
<td class="nump">$ 0.28<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Income per share (diluted) (Note 14)</a></td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.28<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average number of common shares (basic)</a></td>
<td class="nump">12,379,316<span></span>
</td>
<td class="nump">12,316,254<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average number of common shares (diluted)</a></td>
<td class="nump">12,466,415<span></span>
</td>
<td class="nump">12,505,522<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 7,713,229<span></span>
</td>
<td class="nump">$ 4,294,257<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Unrealized gain (loss) on foreign currency transactions</a></td>
<td class="num">(30,069)<span></span>
</td>
<td class="nump">96,391<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest', window );">Total comprehensive income</a></td>
<td class="nump">7,683,160<span></span>
</td>
<td class="nump">4,390,648<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest', window );">Comprehensive income &#8211; non-controlling interest</a></td>
<td class="num">(691,625)<span></span>
</td>
<td class="num">(845,095)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income attributable to controlling interests</a></td>
<td class="nump">$ 6,991,535<span></span>
</td>
<td class="nump">$ 3,545,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_Commissions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commissions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Consulting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_CurrentIncomeTaxExpenseBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_CurrentIncomeTaxExpenseBenefits</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain loss on sale of land.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain on acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_InvestorRelationsAndTransferAgentFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Investor relations and transfer agent fee.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Ppp loan forgiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Shipping cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569643-111683<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<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 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: 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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 10: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<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 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 15: 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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 16: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 17: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (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="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 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 2: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<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 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<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 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<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 https://asc.fasb.org/extlink&amp;oid=126732423&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 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: 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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 15: 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)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 16: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126980362&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 https://asc.fasb.org/extlink&amp;oid=124440516&amp;loc=d3e30840-110895<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of realized and unrealized gain (loss) on investment.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126970911&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GeneralInsuranceExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126941158&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestIncomeOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest income earned from interest bearing assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeOther</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of Net Income (Loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=124433917&amp;loc=SL114874205-224268<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expenses incurred for travel and entertainment during the period.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating expense of regulated operation.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>19
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264309697632">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income for the year</a></td>
<td class="nump">$ 7,713,229<span></span>
</td>
<td class="nump">$ 4,294,257<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock based compensation</a></td>
<td class="nump">399,148<span></span>
</td>
<td class="nump">210,112<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">1,277,431<span></span>
</td>
<td class="nump">965,935<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_LeaseRightOfUseFinancing', window );">Lease right of use financing</a></td>
<td class="nump">8,566<span></span>
</td>
<td class="nump">22,057<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization', window );">Lease right of use amortization</a></td>
<td class="nump">50,045<span></span>
</td>
<td class="nump">265,846<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnInvestments', window );">Gain on investments</a></td>
<td class="num">(341,424)<span></span>
</td>
<td class="num">(507,143)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Bad debt expense</a></td>
<td class="nump">17,869<span></span>
</td>
<td class="nump">6,979<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax expense (recovery)</a></td>
<td class="num">(71,295)<span></span>
</td>
<td class="nump">363,317<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_GainLossOnSaleOfLand', window );">Gain on sale of land</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(44,330)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_GainOnAcquisitionOfSubsidiary', window );">Gain on acquisition of ENP Peru, LLC</a></td>
<td class="num">(335,051)<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="Show.showAR( this, 'defref_FSI_PaycheckProtectionProgramLoanForgiveness', window );">PPP loan forgiveness</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(537,960)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Increase in accounts receivable</a></td>
<td class="num">(2,338,397)<span></span>
</td>
<td class="num">(1,246,495)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Increase in inventories</a></td>
<td class="num">(4,124,022)<span></span>
</td>
<td class="num">(1,275,746)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Decrease (increase) in prepaid expenses</a></td>
<td class="nump">131,864<span></span>
</td>
<td class="num">(139,714)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Increase in accounts payable and accrued liabilities</a></td>
<td class="num">(700,191)<span></span>
</td>
<td class="nump">102,856<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Increase in taxes payable</a></td>
<td class="num">(249,628)<span></span>
</td>
<td class="nump">2,021,048<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Increase in deferred revenue</a></td>
<td class="nump">38,759<span></span>
</td>
<td class="nump">34,727<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Cash provided by operating activities</a></td>
<td class="nump">1,476,903<span></span>
</td>
<td class="nump">4,535,746<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Purchase of investments</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(500,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="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfEquityMethodInvestments', window );">Proceeds of equity investment distributions</a></td>
<td class="nump">265,001<span></span>
</td>
<td class="nump">359,300<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Acquisition of ENP Peru, LLC</a></td>
<td class="num">(499,329)<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment', window );">Sale of property and equipment</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">263,380<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchase of property and equipment</a></td>
<td class="num">(1,981,307)<span></span>
</td>
<td class="num">(782,219)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Cash used in investing activities</a></td>
<td class="num">(2,215,635)<span></span>
</td>
<td class="num">(659,539)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit', window );">Advance of short term line of credit</a></td>
<td class="nump">517,772<span></span>
</td>
<td class="nump">184,746<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Repayment of long term debt</a></td>
<td class="num">(2,292,819)<span></span>
</td>
<td class="num">(943,080)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt', window );">Proceeds of long term debt</a></td>
<td class="nump">3,230,798<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfFinancingCosts', window );">Lease payments</a></td>
<td class="num">(58,611)<span></span>
</td>
<td class="num">(287,903)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToMinorityShareholders', window );">Distribution to non-controlling interest</a></td>
<td class="num">(689,434)<span></span>
</td>
<td class="num">(804,003)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Sale of common stock</a></td>
<td class="nump">140,620<span></span>
</td>
<td class="nump">140,440<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Cash provided by (used in) financing activities</a></td>
<td class="nump">848,326<span></span>
</td>
<td class="num">(1,709,800)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Effect of exchange rate changes on cash</a></td>
<td class="num">(30,069)<span></span>
</td>
<td class="nump">96,391<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Inflow of cash</a></td>
<td class="nump">79,525<span></span>
</td>
<td class="nump">2,262,798<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash resources, beginning</a></td>
<td class="nump">6,735,574<span></span>
</td>
<td class="nump">4,472,776<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash resources</a></td>
<td class="nump">6,815,099<span></span>
</td>
<td class="nump">6,735,574<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Cash', window );">Cash</a></td>
<td class="nump">6,115,099<span></span>
</td>
<td class="nump">5,710,227<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermInvestments', window );">Term deposits</a></td>
<td class="nump">700,000<span></span>
</td>
<td class="nump">1,025,347<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes paid</a></td>
<td class="nump">158,966<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="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest paid</a></td>
<td class="nump">292,949<span></span>
</td>
<td class="nump">179,029<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_InventoryAdditionsInAccountsPayableAndAccruedLiabilities', window );">Inventory additions in accounts payable and accrued liabilities</a></td>
<td class="nump">$ 793,403<span></span>
</td>
<td class="nump">$ 250,923<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain loss on sale of land.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_GainOnAcquisitionOfSubsidiary">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain on acquisition of subsidiary.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_GainOnAcquisitionOfSubsidiary</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory additions in accounts payable and accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lease right of use financing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Paycheck Protection Program Loan Forgiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Cash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 21<br> -URI https://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631419-115840<br><br>Reference 4: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126999549&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&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 https://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 https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GainLossOnInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of realized and unrealized gain (loss) on investment.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126970911&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126938201&amp;loc=d3e55415-109406<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126999549&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for loan and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromRepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: 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(8))<br> -URI https://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)(1)(g))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>20
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264309665616">
<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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">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>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="num">(30,069)<span></span>
</td>
<td class="num">(30,069)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(30,069)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">7,021,604<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">7,021,604<span></span>
</td>
<td class="nump">691,625<span></span>
</td>
<td class="nump">7,713,229<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Common stock issued</a></td>
<td class="nump">$ 71<span></span>
</td>
<td class="nump">140,549<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">140,620<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">140,620<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Common stock issued, shares</a></td>
<td class="nump">71,014<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">(689,434)<span></span>
</td>
<td class="num">(689,434)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">399,148<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">399,148<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">399,148<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2022</a></td>
<td class="nump">$ 12,426<span></span>
</td>
<td class="nump">$ 17,523,345<span></span>
</td>
<td class="nump">$ 15,903,964<span></span>
</td>
<td class="num">$ (805,799)<span></span>
</td>
<td class="nump">$ 32,633,936<span></span>
</td>
<td class="nump">$ 2,605,034<span></span>
</td>
<td class="nump">$ 35,238,970<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Dec. 31, 2022</a></td>
<td class="nump">12,426,260<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126964447&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 20<br> -Section 55<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11178-113907<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 35<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126961718&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://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 https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126987489&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 https://asc.fasb.org/extlink&amp;oid=126987489&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 https://asc.fasb.org/extlink&amp;oid=126929396&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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126983759&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 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(3)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL125981372-237846<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<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 (f)(2)<br> -URI https://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 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 25: 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 https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4568447-111683<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<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 1<br> -Subparagraph (b)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 28: 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 https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>21
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318613456">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock', window );">BASIS OF PRESENTATION</a></td>
<td class="text"><p id="xdx_807_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_z45Rge9nNb4c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>1.
<span>Basis of Presentation</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. </span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_829_zljdzL11lUjg" style="display: none; font-family: Times New Roman, Times, Serif">BASIS
OF PRESENTATION</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;&#160;</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
consolidated financial statements (&#8220;consolidated financial statements&#8221;) 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.,
its 97% controlling interest in ENP Peru Investments LLC (&#8220;ENP Peru&#8221;) and its <span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpInvestmentsLlcAndEnpMendotaMember_zqUdhlwfgce2" 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; 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; 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_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember_zxBCwElOH0ea" title="Subsidiary company ownership interest rate">65</span>% interest in ENP Investments for an aggregate purchase price of $<span id="xdx_90E_eus-gaap--BusinessCombinationConsiderationTransferred1_pp0p0_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember_zh6RtWdCaqk9" title="Purchase price">5,110,560</span>. An unrelated
party owns the remaining <span id="xdx_905_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zW2d5qujsE89" 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_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MinimumMember_znVpeDh9Un7k" title="Subsidiary company ownership interest rate">24</span>% to <span id="xdx_907_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MaximumMember_zgp4GYOEpc7h" 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
2022, NanoChem purchased an additional <span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zLmIIdFV9fQb" title="Subsidiary company ownership interest rate">50</span>% in ENP Peru, increasing its share to <span id="xdx_900_ecustom--IncreaseDecreaseInSharePercentage_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_z7tNfAo7BTB" title="Increase decrease in share percentage">91.67</span>%. ENP Investments owns the remaining <span id="xdx_907_ecustom--RemainingInvestmentOwnedPercentage_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_ztZW8HIiYID" title="Remaining investment owned percentage">8.33</span>%, of
which the Company has a <span id="xdx_907_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_ziji1DBYjeoe" title="Subsidiary company ownership interest rate">65</span>% interest. ENP Peru was previously accounted for under the equity method however, is now consolidated into
the financial statements from the date control was obtained. The <span id="xdx_903_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpPeruMember_z9oGO3r1DlCd" title="Minority interest ownership percentage by parent">35</span>% non-controlling interest portion of the 8.33% held by ENP Investments
is included in non-controlling interests in these consolidated financial statements.</span></p>

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




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>22
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264400362992">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">SIGNIFICANT ACCOUNTING POLICIES</a></td>
<td class="text"><p id="xdx_808_eus-gaap--SignificantAccountingPoliciesTextBlock_zlcpZVOjF64c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b/></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>2.
<span>Significant Accounting Policies</span>. </b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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--CashAndCashEquivalentsPolicyTextBlock_zazRiQrOtSdl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
<i><span id="xdx_863_zKcF4dgaJPMb">Cash and Cash Equivalents</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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_843_ecustom--TermDepositsPolicyTextBlock_z0egtWF4e6kd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
<i><span id="xdx_86B_z1oQH8A1LHMk">Term Deposits</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
deposits maintained by the Company with banks comprises term deposits. The Company has two term deposits, the first for $<span id="xdx_909_eus-gaap--Deposits_iI_c20221231_zhlpEQpH0bwb" title="Deposit">700,000</span>
that matures in 2023 and pays interest at a rate of <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231_z7aSS1v1inqe" title="Debt interest rate">3.0</span>%.
If withdrawn before maturity, the greater of the loss of accrued interest or $<span id="xdx_905_eus-gaap--InterestPayableCurrentAndNoncurrent_iI_c20221231_zp3VpQbjVBL5" title="Accured interest">150</span>,
plus 1% of the principal shall be levied. The other term deposit for $<span id="xdx_90B_ecustom--OtherTermDeposit_iI_c20221231_zWMzSzrnxkE" title="Other term deposit">300,000</span>
pays 1.3% interest, matures in 2023 and can be withdrawn by the Company at any point without prior notice or penalty on the
principal.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_842_eus-gaap--InventoryPolicyTextBlock_zeaVgjM50V31" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)
<i><span id="xdx_862_zPjRTXgGmRE2">Inventories and Cost of Sales</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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. Cost is determined on a first-in, first-out basis or weighted average cost
formula 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 (2022 - $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_ze7gYqt712ac" title="Sales">433,015</span>; 2021 - $<span id="xdx_90F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zZfdPWsbvrE" title="Sales">465,493</span>). Shipping and handling costs
incurred are included in cost of goods sold (2022 - $<span id="xdx_908_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zh3H76QAZxt1" title="Cost of sales">913,890</span>; 2021 - $<span id="xdx_90A_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zy87PLGBULC8" title="Cost of sales">1,058,674</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_ziGSUbSIY0oh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(d)
<i><span id="xdx_862_zCf4zWhAYy13">Allowance for Doubtful Accounts</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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_845_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_zmApyTRZLNK5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(e)
<i><span id="xdx_86D_zn84cbk4eIkj">Property, Equipment, Leaseholds and Intangible Assets</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zOH9hl7J6SRe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B0_zXclfCEmLkR4" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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: 80%; 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: 49%"><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: 49%"><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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_ztRd9ikOnKV9" 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">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_901_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z77p6PImsJ0j" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zo32bFiXs3gh" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zNMzEAb7yOY4" 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_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zPWqBDoMbVv" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zXC5UmZH81J9" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zCjKXAFyZ23f" 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_907_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_z4RuVp7DBong" 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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zxoxGw8w76z" 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_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z1XrN8TFIK1l" 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 </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_903_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--CustomerRelationshipsMember_zQGyUOKauyUb" 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
    </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_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareMember_zMsy4SHmjndg" 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_8AC_zx2MO2p9RHvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zOk0PIZVKmLl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(f)
<i><span id="xdx_86B_zymt0U4CtS8a">Impairment of Long-Lived Assets</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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>Property, Plant and Equipment</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; 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_845_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_z0Vioh4spxeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(g)
<i><span id="xdx_867_zgWr1WjPiyr9">Foreign Currency</span></i>.</span></p>

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

<p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zx9nyMvM2uC2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(h)
<i><span id="xdx_86E_zqtTMryuchT5">Revenue Recognition</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
18.</span></p>

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

<p id="xdx_846_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zxTgKl7lUTH1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(i)
<i><span id="xdx_864_z2VJsu9smxM7">Stock Issued in Exchange for Services</span></i>.</span></p>

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

<p id="xdx_845_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zKZA4jCplGwh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(j)
<i><span id="xdx_868_zH3DgkOzs263">Stock-based Compensation</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; 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; 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; 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_844_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zlxCLSa6fOmb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(k)
<i><span id="xdx_86E_zy1cTJIDrKEf">Other Comprehensive Income</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 related to the translation of subsidiaries&#8217; functional currency into the reporting currency.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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--EarningsPerSharePolicyTextBlock_zY3jIEuSS1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(l)
<i><span id="xdx_86A_z8ck7T4gSKEl">Income Per Share</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 the years ended December
31, 2022 and 2021.</span></p>

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

<p id="xdx_846_eus-gaap--UseOfEstimates_zrumup7AyQik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(m)
<i><span id="xdx_86C_z8sTHA7m8L2l">Use of Estimates</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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; 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; 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; 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; 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; 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, 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 and the valuation of inventory.</span></p>

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

<p id="xdx_843_eus-gaap--FairValueOfFinancialInstrumentsPolicy_zIjCAySF2sb4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(n)
<i><span id="xdx_867_zm6IdG6A2nvb">Fair Value of Financial Instruments</span>.</i></span></p>

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




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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></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"><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"><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"><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">&#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"><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">&#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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of cash, 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; 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; 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 approximate 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; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84A_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zjbHjtvyr5C5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zet6bHsrErGg">Contingencies</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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. The Company is not aware of any contingencies at the date of these consolidated financials statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_842_eus-gaap--IncomeTaxPolicyTextBlock_zZMgNq2KcDNe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(p)
<i><span id="xdx_866_zoxYsO3rEui4">Income Taxes</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 computed by multiplying the Company&#8217;s <span style="font-family: Times New Roman, Times, Serif">taxable
</span>net income by the Company&#8217;s effective tax rates. Deferred income tax assets and liabilities are recognized for the future tax consequences
attributable to differences between the <span>consolidated</span> financial statement carrying amounts of existing
assets and liabilities and their respective tax bases, and operating loss carry-forwards, <span>if any</span>. Deferred
income 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 income tax assets and liabilities of a change in
tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to reduce the carrying
amount of deferred income tax assets if it is considered more likely than not that some portion, or all, of the deferred income tax assets
will not be realized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 740, <i>Income taxes</i> (ASC 740) 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, 2022, 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




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

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

<p id="xdx_846_eus-gaap--ConcentrationRiskCreditRisk_z7zMXGIcafY9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zfVzWjpTjH75">Risk Management</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; margin: 0pt; 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_905_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zzsCVFT5YIm5" title="Sales">27,775,617</span>
(<span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_z0EDxo9FgWEl" title="Accounts receivable, after allowance for credit loss">61</span>%) for the year ended December 31, 2022 (2021 - $<span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zuRfBH2lIaQ5" title="Sales">16,917,947</span> or <span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zwe1PI7n21j" title="Accounts receivable, after allowance for credit loss">49</span>%). Accounts receivable for the Company&#8217;s three primary customers
totaled $<span id="xdx_904_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z0Glx4WSJjMl" title="Accounts receivable, after allowance for credit loss">6,124,424</span> (<span id="xdx_907_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zwBakjUGHaxf" title="Accounts receivable, after allowance for credit loss, percentage">65</span>%) at December 31, 2022 (2021 - $<span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z6NIde61G83j" title="Accounts receivable, after allowance for credit loss">4,940,995</span> or <span id="xdx_90C_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkW2vXSnAjQg" title="Accounts receivable, after allowance for credit loss, percentage">69</span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
credit risk on cash is limited because the Company limits its exposure to credit loss by placing its cash 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; 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; 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; 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; 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, 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; 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; 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; 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; 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; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_845_eus-gaap--EquityMethodInvestmentsPolicy_zETmP5gP4c4f" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(r)
<i><span id="xdx_861_zn4gwZImqwM4">Equity Method Investment</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_904_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20220101__20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--InvestmentMember_zZ3qzx6VNFu2" title="Equity method investment, description">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; 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_844_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_ziV4ZDSAspjh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(s)
<i><span id="xdx_867_zHsFqoWjWKGc">Goodwill and Intangible Assets</span>.</i></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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.
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; 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; 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 350, <i>Intangibles &#8211; Goodwill and Other, </i>(ASC 350), qualitative assessments of goodwill
and indefinite-lived intangible assets were performed in 2022 and 2021. 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 amounts. 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, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; 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--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zjXTjhs11Tvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(t)
<i><span id="xdx_863_zAjxh6jBNKZ">Recent Accounting Pronouncements</span>.</i></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_859_zawBq1LmDMvh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126899994&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 https://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>23
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318392032">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">LEASES</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--LesseeOperatingLeasesTextBlock_zmko7BGbFVE3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>3.
<span>Leases</span> </b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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-long term 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_90B_eus-gaap--LesseeOperatingLeaseDiscountRate_iI_pid_dp_uPure_c20221231_zvu0FpaZW3W9" title="Operating leases discount rate">5.5</span>%.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_zjqrXHh7ecy1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zcWt63vyDvj8" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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; border-collapse: collapse; width: 90%; margin-left: 0.5in">
  <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>&#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: 80%">Balance at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zl3Y5Y19Mgy5" style="width: 16%; text-align: right" title="Right of use assets, beginning balance">483,113</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">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_98C_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zQCW8HHk5T1d" 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_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20220101__20221231_zkrTKUxdLIP7" style="text-align: right" title="Right of use assets, beginning balance">217,267</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_988_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20220101__20221231_zq2GCT1M9pS2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation">(50,045</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">Balance at December 31, 2022</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--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20220101__20221231_zlYyfgjB8St2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Right of use assets, ending balance">167,222</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></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, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_zHQL6BaeDfzd" style="text-align: right" title="Lease liability, beginning balance">483,113</td><td style="text-align: left">&#160;</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_989_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_ziy6LuuHcDtg" 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: 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_c20210101__20211231_z54seAXcsdL1" 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: White">
    <td>Balance at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20220101__20221231_zPlddSdIbac9" style="text-align: right" title="Lease liability, beginning balance">217,267</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_984_ecustom--LeaseInterestExpense_pp0p0_c20220101__20221231_z6rENlYxm7l6" style="text-align: right" title="Lease interest expense">8,566</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_981_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20220101__20221231_zLtu4CyVNwYc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments">(58,611</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, 2022</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_c20220101__20221231_zGrPmdQqEocj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease liability, ending balance">167,222</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_980_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20221231_zbRRLRIuZAy5" style="text-align: right" title="Short-term portion">58,080</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_98C_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20221231_z9W7PIl57Rod" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion">109,142</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_984_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20221231_zpORKgkyLf1l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">167,222</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AF_zJrTdoe69Dyf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zPZhutpoW4bl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zCKzwPUm0Rzi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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="font: 10pt Times New Roman, Times, Serif; display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_498_20221231_zSKidC56c3Rl" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_z2KtkfZZ7Xz" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: justify">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">58,080</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zQxB1PGW33V3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">59,520</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zj4Yai8HEZw5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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">61,020</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_pp0p0_mtLOLLPz1VZ_zldNHSLP7ba8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Total</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">178,620</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_z590Af5dIow9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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">(11,398</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: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">Lease liability, December 31, 2022</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">167,222</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A2_zZtVrMuNAjxc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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_FSI_DisclosureLeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>24
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318415760">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancingReceivablesTextBlock', window );">ACCOUNTS RECEIVABLE</a></td>
<td class="text"><p id="xdx_80E_eus-gaap--FinancingReceivablesTextBlock_zZU5T8DTn8Ec" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>4.
<span>Accounts Receivable <span id="xdx_829_zLaPJZlkdwhh" style="display: none; font-family: Times New Roman, Times, Serif">ACCOUNTS
RECEIVABLE</span></span> </b></span></p>

<p id="xdx_896_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_z1gCTWL1Qtn5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zgNdG9PP2wr5" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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_20221231_zaE2ZofO2zGb" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20211231_zcXC0Rt4it1h" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_407_eus-gaap--AccountsReceivableGross_iI_pp0p0_maAANRNzCGO_maAANRNzPjC_z2kAp2mbcu19" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Accounts receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">9,739,150</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">7,403,308</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_iNI_pp0p0_di_msAANRNzCGO_msAANRNzPjC_zMGyNvd1haA7" 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">(289,293</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">(273,979</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_iTI_pp0p0_mtAANRNzPjC_zUgrRJlWSYHf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; 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">9,449,857</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">7,129,329</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A9_zUTbvaDHlzCl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif">&#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_FinancingReceivablesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for financing receivable.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/subtopic&amp;trid=2196816<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>25
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318363168">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">INVENTORIES</a></td>
<td class="text"><p id="xdx_807_eus-gaap--InventoryDisclosureTextBlock_zgHNBrVWiZo4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>5.
<span>Inventories <span id="xdx_820_zkxCnVkensYc" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">INVENTORIES</span></span> </b></span></p>

<p id="xdx_890_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zIoUdUc2KOJ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BC_zilafhaBzqWi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">SCHEDULE
OF INVENTORY</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_494_20221231_zpOxREueT87a" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20211231_zFULKKzCkJI7" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_404_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_maINzkLt_z3J51jildvJf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Completed goods</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">3,806,646</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">3,417,829</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_maINzkLt_zMIqCcIWksH2" style="vertical-align: bottom; background-color: White">
    <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">10,612,784</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">6,084,176</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzkLt_zxS9n61hmpb9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total
    inventory</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">14,419,430</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">9,502,005</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A0_zE5Zj2Q9YSnb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>26
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318419488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, PLANT &amp; EQUIPMENT<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">PROPERTY, PLANT &amp; EQUIPMENT</a></td>
<td class="text"><p id="xdx_80E_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_z2UYtFfUbSD5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>6.
<span><span>Property, Equipment and Leaseholds <span style="font: small-caps 10pt Times New Roman, Times, Serif; display: none"><b><span id="xdx_829_zXHjYVcu0lwa">PROPERTY,
PLANT &amp; EQUIPMENT</span></b></span></span></span> </b></span></p>

<p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zAIBDiMBAgve" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zWIKVDqGZY2d" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentGross_iI_zWCIGsgTOmhc" style="text-align: center">2022</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_487_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_zi7gF1xWQe59" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_481_eus-gaap--PropertyPlantAndEquipmentNet_iI_zRWFa8F88ICk" style="text-align: center">2022</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 id="xdx_41A_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zCWhLlFY4rll" 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 style="width: 14%; text-align: right">8,775,629</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,310,920</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,464,709</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_414_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zOkvXmjkLui9" style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">196,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,055</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">89,200</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zU6sAHYNlCQ" 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 style="text-align: right">43,432</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">42,663</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">769</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41D_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zieXsgtyzHy8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">133,280</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">112,782</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">20,498</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_410_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHYL0hDWPrLe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,634,063</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,891,736</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,742,327</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDGqI3u5ilgh" style="vertical-align: bottom; background-color: White">
    <td>Trailers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,857</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,592</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,265</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41F_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zQm1Nk7ArgH7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">27,907</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,493</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zTfQFn9mS3Yk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0843">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_412_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zTaf8Ekx3f3l" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">100,860</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">100,860</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0846">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41B_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zTExOTaW9TB5" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">384,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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0848">&#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 style="border-bottom: Black 1.5pt solid; text-align: right">384,027</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">&#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_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231_z308nsRf9g4l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">18,399,675</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_98A_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20221231_z2lYeZlsD60h" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation">8,690,387</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_iI_c20221231_zPsFc33YTw33" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, plant and equipment, net, total">9,709,288</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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" id="xdx_485_eus-gaap--PropertyPlantAndEquipmentGross_iI_zcY6qmJKnMx2" style="text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_482_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_z0ABppyZ7Ce9" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentNet_iI_zY6M8BveDuj9" 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 id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zxTx0PfHaq23" 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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">1,840,119</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_411_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zoUtZRMclXb8" style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">196,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">71,258</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">124,997</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z4mbAZ1ZGCfa" 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 style="text-align: right">43,605</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">42,456</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,149</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_416_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_z3acbxnX0Ok3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">132,530</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,256</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">25,274</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHEretU9iWSg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,867,799</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,171,699</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,696,100</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_412_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zpeGtUeNODk6" style="vertical-align: bottom; background-color: White">
    <td>Trailers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">9,463</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,532</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,931</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41A_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zBmIoeXCRva2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">26,284</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,116</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_410_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zNZ25CQ3wzv6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0879">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zbUWCBEDB1dl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0882">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zBrHzBx3d7Z4" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0884">&#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 style="border-bottom: Black 1.5pt solid; text-align: right">234,027</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">&#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--PropertyPlantAndEquipmentGross_iI_c20211231_z6Q3QgstkiHl" 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_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20211231_zMLf7YF5ImYk" 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_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_c20211231_zauqqEkkXNuh" 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 id="xdx_8A0_zuazo0KGY68i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; text-align: justify; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of depreciation expense for 2022: $<span id="xdx_907_eus-gaap--Depreciation_pp0p0_c20220101__20221231_zlkLLew0qkE2" title="Depreciation">1,103,732</span> (2021 - $<span id="xdx_909_eus-gaap--Depreciation_pp0p0_c20210101__20211231_zEpq0hmR1Urj" title="Depreciation">773,497</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; 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; 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_905_eus-gaap--AreaOfLand_iI_usqft_c20210331_zb4AI0UvGLhb" 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_90B_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zCrBp0v2Yb6a" title="Proceed for disposal">263,380</span>
($<span id="xdx_901_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zqDRPPr9JDs1">333,899</span>CAD). With a cost of $<span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zuCI6FDeZusf" title="Cost">219,318</span> ($<span id="xdx_900_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_uCAD_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_ziVkpa5BoC2" title="Cost">278,040</span>CAD) the Company recognized a gain of $<span id="xdx_90E_eus-gaap--GainLossOnDispositionOfAssets1_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zODB5SWYTDU9" title="Recognized gains">44,330</span> ($<span id="xdx_905_eus-gaap--GainLossOnDispositionOfAssets1_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zLjGWanJFmUh">55,859</span>CAD) on the disposal.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126982197&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 https://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 https://asc.fasb.org/extlink&amp;oid=126982197&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 https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>27
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318348720">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">PATENTS</a></td>
<td class="text"><p id="xdx_800_eus-gaap--IntangibleAssetsDisclosureTextBlock_znkjLaBcpor6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>7.
<span>Patents <span id="xdx_825_zrTZKxGdRuze" style="display: none; font-family: Times New Roman, Times, Serif">PATENTS</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span> </b></span></p>

<p id="xdx_895_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zzvrLwZgwhT3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span id="xdx_8B8_zxK14KCMvErj" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">SCHEDULE OF PATENTS</span><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; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2022</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2022</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_988_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20221231_z0q6dzd0VTZg" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, cost">195,725</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_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_z0tX8HePGAp7" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated amortization">195,725</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_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20221231_zfYJXMACyTz2" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net">&#160;&#160;&#160;&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0917">-</span></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; 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; 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; 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; 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; 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_98B_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zkn2b2EVDoh8" 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_98B_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_zgaMj03jDWS1" 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_980_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zY1rnrZss2Hl" 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 id="xdx_8AA_zcAkhQu5URAl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Decrease
in 2022 cost was due to currency conversion. The cost as of December 31, 2022 in Canadian dollars is $<span id="xdx_90C_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20221231_zkRGXOYOzlq" title="Increase in currency conversion">265,102</span> (2021 - $<span id="xdx_90E_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20211231_zbdVg7Xh6Nnc" title="Increase in currency conversion">265,102</span> CAD).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amount
of amortization for 2022 was $<span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--PatentsMember_zfdnf2UEsaJb" title="Amortization of intangible assets">13,699</span> (2021 - $<span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--PatentsMember_z097jfbVwX49" title="Amortization of intangible assets">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; 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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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> -URI https://asc.fasb.org/subtopic&amp;trid=2144471<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>28
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318408400">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">GOODWILL AND INTANGIBLE ASSETS</a></td>
<td class="text"><p id="xdx_801_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zNTYnlrUvc69" style="font: 10pt Times New Roman, Times, Serif; margin: 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</span></span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="font-variant: small-caps"><span><span id="xdx_829_zrWlCQuthC1f" style="font: small-caps 10pt Times New Roman, Times, Serif; display: none"><b>GOODWILL
AND INTANGIBLE ASSETS</b></span></span> </span></b></span></p>

<p id="xdx_891_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zbrYiNcCBuO8" style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_z5ulJQC246u1">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: 80%; padding-bottom: 1.5pt">Balance as of December 31, 2021 and 2022</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: 16%; text-align: right"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zKZkeDfDjVq3" title="Goodwill"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20221231_zXv5UuxHigM6">2,534,275</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, 2021 and 2022</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_905_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_z5VzZGQZvtF9" title="Indefinite lived intangible assets, ending balance"><span id="xdx_901_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20221231_zMQhyANSjs33">770,000</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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: 80%">Balance as of December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zaeM2pOh62j" style="width: 16%; text-align: right" title="Indefinite lived intangible assets, beginning balance">2,006,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_984_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zq40bQbXRVmd" 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, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zvqVdHmFjL03" style="text-align: right" title="Indefinite lived intangible assets, beginning balance">1,830,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_980_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zZv6U1ytREy2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization">(160,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, 2022</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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zVBEeoIhBZjh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Indefinite lived intangible assets, ending balance">1,670,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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




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

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

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

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

<p id="xdx_891_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zmXqIIEewY3d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zYUNT0na5iQh" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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: 80%; text-align: justify">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zIDiF5aFT98b" title="2023">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">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zTKg1CyNbkP4" style="text-align: right" title="2024">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">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z5A0FkAzpZAi" style="text-align: right" title="2025">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zoS6GWjrU7Sh" style="text-align: right" title="2026">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">2027</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--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z7ovJ3uJ5AOd" style="border-bottom: Black 1.5pt solid; text-align: right" title="2027">160,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A3_zoA2gOTiAmug" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>29
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318333632">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_FSI_LongTermDepositsTextBlock', window );">LONG TERM DEPOSITS</a></td>
<td class="text"><p id="xdx_808_ecustom--LongTermDepositsTextBlock_z4yVgoLnhJxk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>9.
<span style="font-variant: small-caps"><span><span><span>Long Term Deposits</span></span> </span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"><span id="xdx_821_z4XUKhvnSzQg">LONG TERM DEPOSITS</span></p>

<p id="xdx_895_ecustom--ScheduleOfLongTermDepositsTableTextBlock_zBsSm6lhatKa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zKgl9BZFWcI3" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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_49D_20221231_z9XYevAT68x5" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20211231_z7MuIDEwsiDa" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1.5pt">Long term deposits</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: 16%; text-align: right">8,540</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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right">8,540</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>
<p id="xdx_8A4_zeOZDYHgghtk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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_FSI_DisclosureLongTermDepositsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long Term Deposits [Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>30
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318605952">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsDisclosureTextBlock', window );">INVESTMENTS</a></td>
<td class="text"><p id="xdx_80D_eus-gaap--EquityMethodInvestmentsDisclosureTextBlock_zxtPhDd3osD2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>10.
<span>Investments</span> </b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_826_z7PlF420Ywia">INVESTMENTS</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 previously held a <span id="xdx_907_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpPeruInvestmentsLlcMember_z7M4k4sVIMAi" title="Ownership interest">50</span>% ownership interest in ENP Peru, split between NanoChem (<span id="xdx_90F_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--NanoChemMember_z4mejyCp0X2a" title="Ownership percentage">41.67</span>%) and ENP Investments (<span id="xdx_90D_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpInvestmentsLLCMember_zCpO7Qy09Xp3" title="Equity method investment ownership percentage">8.33</span>%), which was
acquired in fiscal 2016. ENP Peru is located in Illinois and leases warehouse space. In June 2022, NanoChem acquired an additional
<span id="xdx_90A_ecustom--AdditionalEquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--NanoChemMember_zkGbvGvvWk1f" title="Additional ownership interest">50</span>% ownership interest at a cost of $<span id="xdx_901_ecustom--RemainningShareOutstanding_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_zup04BX3caT" title="Remainning share outstanding">506,659</span> paid through a new $<span id="xdx_90A_eus-gaap--Cash_iI_c20221231__srt--OwnershipAxis__custom--EnpPeruMember_zBu0tlkLxaU8" title="cash">259,000</span> mortgage and cash on hand. The <span id="xdx_907_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zlAIHUcgjnid" title="Minority Interest Ownership Percentage">35</span>% non-controlling interest
of the <span id="xdx_90C_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpInvestmentsLLCMember_z4NhTiOK5chi" title="Equity method investment ownership percentage">8.33</span>% owned by ENP Investments is included in non-controlling interest in these consolidated financial statements. The
Company&#8217;s investment in ENP Peru was previously accounted for using the equity method, however, is now consolidated into the
consolidated financial statements from the date control was obtained.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">It
was determined that ENP Peru did not meet the definition of a business in accordance with FASB Codification Topic 805, <i>Business
Combinations </i>(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 Peru as of the acquisition date. </span>The gain on acquisition of ENP Peru represents a gain on remeasurement of
the Company&#8217;s equity method investment immediately prior to the acquisition date.</p>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></p>

<p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zX6cbLFtnKDe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8BA_z3rK1lX9knB6">SCHEDULE
OF  FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED</span></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="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20220101__20221231_zSQUvD4v4mLl" style="text-align: right">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationConsiderationTransferred1_z5Yz0mGjSh1l" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left; padding-bottom: 1.5pt">Purchase consideration</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: 16%; text-align: right">506,659</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 id="xdx_40A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iE_zRKjVmaEjkla" 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 style="text-align: right">7,330</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iE_zqW2bjeKwDr9" 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 style="text-align: right">3,750,000</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iE_zKdVDrGcsYZc" 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 style="text-align: right">150,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 id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNE_di_zDCvuxzhBmRc" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Deferred tax liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(174,582</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_iE_zS4Dc7t7YCYg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Long term debt</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,849,500</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iE_zALzdPO8ys64" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">883,248</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_iE_zINPPWTb6B08" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Excess of assets acquired over consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">376,589</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_ecustom--InvestmentEliminatedUponConsolidation_zoTIrQXaD8jk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Less investment eliminated upon consolidation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(41,538</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_ecustom--GainOnAcquisitionOfSubsidiary_zlDiwZHC5B3b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain on acquisition of ENP Peru</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">335,051</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zIqugyKIQgnc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.7in"><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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8B5_zewEUz3CJgue">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></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: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_902_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zB3CB8AKKjCi" title="Balance, Beginning">3,822</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_983_ecustom--EquityMethodInvestmentReturnOfEquity_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zNmJPMjn6ABe" 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: 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_982_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zA4Td4LWwNal" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain 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: White">
    <td>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z6zwz0rtTc4k" style="text-align: right" title="Balance, Beginning">22,642</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_98F_ecustom--EquityMethodInvestmentReturnOfEquity_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zsYQzKt3k7B6" style="text-align: right" title="Return of equity">(8,750</td><td style="text-align: left">)</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_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z5tunoBA2Wwe" style="text-align: right" title="Gain in equity method investment">27,646</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">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_988_ecustom--InvestmentEliminatedUponConsolidation_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zQYO2nCQYykl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation">(41,538</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, June 30 and December 31, 2022</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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zbgFRVVu3nVb" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"><span style="-sec-ix-hidden: xdx2ixbrl1028">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A5_z5rRaS3LMi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<p id="xdx_89B_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zlizCmMgIrk5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information related to the equity accounted investment is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8BD_z3IeGPjwTig8">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></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: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20220101__20220630__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zTALQTJC7sz7" style="border-bottom: Black 1.5pt solid; text-align: center">Six months ended <br/> June 30, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z9MfWvtc0Zf6" style="border-bottom: Black 1.5pt solid; text-align: center">Year ended <br/> December 31, 2021</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 id="xdx_400_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zdIpjC1Jux9c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">162,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">322,079</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"/></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_404_ecustom--RealizedInvestmentGainsLossesNet_zp4rJOPGPP5j" 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">&#160;</td><td style="text-align: right">55,292</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">45,285</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A4_zC0s89wcMkN2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
December 2018 the Company invested $<span id="xdx_90B_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zYjtGLvajH9c" 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 2021 but may be extended with notice for a maximum of two years. During the
year ended December 31, 2021, the Company entered an agreement with Applied to extend the maturity date of this promissory note to
<span id="xdx_90C_eus-gaap--DebtInstrumentMaturityDate_dd_c20210101__20211231_z34NZ0p8L3K1" title="Debt maturity date">December 6, 2023</span>. In accordance with FASB Codification Topic 323, <i>Investments &#8211; Equity Method and Joint Ventures</i> (ASC
323), the Company has elected to account for this investment at cost.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif">(</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>c<span style="font-variant: small-caps">)
</span></b>In December 2018 the Company invested $<span id="xdx_908_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_z9nMV8tKtI9d" 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_902_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20181201__20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_zzbF5HEX7sZ9" title="Common stock issued, shares">50,000</span> non-voting Class B shares at $<span id="xdx_90E_eus-gaap--SharePrice_iI_pid_c20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_zjW4RMgca8ic" 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>d) </b>In
January 2019, the Company invested 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_908_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20190131__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--FloridaBasedLLCMember_zkjYl7mzizT9" title="Ownership percentage">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 style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="background-color: white">&#160;</span></span></p>

<p id="xdx_895_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zCmzUSq8q0E6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zJi7XAK6QsRg" 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: 85%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zLrCbVhMh1j5" title="Balance, Beginning">3,572,345</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">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z06NYLPrQHmg" style="text-align: right" title="Gain (loss) 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_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zMN3D1pDHRY" 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>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8ojLyzsVACi" style="text-align: right" title="Balance, Beginning">3,701,368</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_980_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zP9MvKl3IF6e" style="text-align: right" title="Gain (loss) in equity method investment">307,527</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_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqq628UNx0wc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity">(250,000</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, 2022</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_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrSxR8hLzQFd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Balance, Ending">3,758,895</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AF_zf4ZkasQvIQh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zJEodwGYEjDg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information related to the equity accounted investment is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zKKN1pJiKd59" 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" id="xdx_497_20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zYKqfT1o8Oki" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zpzbmcsHYlo7" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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 id="xdx_402_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zkrWkJ3kpxte" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">18,103,070</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">11,543,277</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--RealizedInvestmentGainsLosses_zmisjQAmqTLi" 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 style="text-align: right">4,204,311</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,517,387</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--RealizedInvestmentGainsLossesNet_z3TOwU1Z5445" 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 style="text-align: right">615,055</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">908,045</td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022, the Company had sales of $<span id="xdx_909_eus-gaap--RevenueFromRelatedParties_c20220101__20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zKEZpZxQVQxc" title="Sales">12,938,735</span> (2021 - $<span id="xdx_908_eus-gaap--RevenueFromRelatedParties_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zK2lWAYo6v0f" title="Sales">7,982,281</span>) to the Florida Based LLC, of which $<span id="xdx_90E_eus-gaap--AccountsReceivableRelatedParties_iI_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zipjPwL38yR3" title="Accounts receivable related parties">2,423,285</span>
is included within Accounts Receivable as at December 31, 2022 (2021 - $<span id="xdx_900_eus-gaap--AccountsReceivableRelatedParties_iI_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zIK3DP0r3Y1k" title="Accounts receivable related parties">2,202,345</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_90B_eus-gaap--PaymentsToAcquireInvestments_pp0p0_c20201201__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zIHyXm5c6Wdk">500,000</span> </span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">in
Lygos Inc. (&#8220;Lygos&#8221;), a privately held entity, under a Simple Agreement for Future Equity (&#8220;SAFE&#8221;)
agreement. Lygos is a company developing a sustainable aspartic acid microbe strain. In 2021, the Company made a second SAFE
investment of $<span id="xdx_906_eus-gaap--PaymentsToAcquireInvestments_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_ziYwfqJlU4ba">500,000</span>.</span> <span style="font: small-caps 10pt Times New Roman, Times, Serif">T</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">he
Company has elected to account for this investment at cost. A summary of the Company&#8217;s investment follows:</span></p>

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

<p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zZZl4WPs7Yhd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_zl6Amg4fNlp8" 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: 85%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zPqcyCUb8Fne" title="Balance, Beginning">500,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: left; padding-bottom: 1.5pt">Additional investment</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"><span id="xdx_908_ecustom--AdditionalPaymentInvestment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zgienAi9gmx9" title="Additional payment investment">500,000</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="padding-bottom: 1.5pt">Balance, December 31, 2021 and December 31, 2022</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_90D_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_z4FCW8waCDg1" title="Balance, Ending">1,000,000</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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




<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><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_EquityMethodInvestmentsAndJointVenturesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/topic&amp;trid=2196965<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>31
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318666336">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermDebtTextBlock', window );">SHORT-TERM LINE OF CREDIT</a></td>
<td class="text"><p id="xdx_80B_eus-gaap--ShortTermDebtTextBlock_zB4eL9qIZTkh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>11.
<span>Short-Term Line of Credit</span> </b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify"><span id="xdx_821_zTHFx2KDdst">SHORT-TERM LINE OF CREDIT</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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
March 2022, ENP Investments signed a new agreement with Midland States Bank (&#8220;Midland&#8221;) to renew the credit line. In
June 2022, ENP Investments closed the account. The revolving line of credit was for an aggregate amount up to $<span id="xdx_90B_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUZp1IGJvSz" title="Aggregate amount of revolving line of credit">4,000,000</span>.
The interest rate of this loan was 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 was
calculated using a rate of <span id="xdx_90E_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20220301__20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zcJM0194sF82" title="Debt effective rate">1.000</span>
percentage points over the Index. Under no circumstances was the interest rate of this loan less than <span id="xdx_90A_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20220331__srt--RangeAxis__srt--MaximumMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z5hd7uAi50Pe" title="Line of credit facility interest rate">4.25</span>%
per annum or more than the maximum rate allowed by applicable law. The interest rate at December 31, 2021 was <span id="xdx_903_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z9ebtyLGobyi" title="Annual interest rate of loan">4.25</span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contained 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 was a guarantor of <span id="xdx_901_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220331__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zRUKdUGr7Or7" title="Loan guaranteed rate">65</span>% of all the principal and other loan costs not to exceed
$<span id="xdx_900_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220331__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zqDrs3Yt4U2d" title="Line of Credit">2,600,000</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 which has now been terminated.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $<span id="xdx_905_eus-gaap--ShortTermBorrowings_iI_dxL_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKdK00bQKCta" title="Short-term borrowings::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1109">nil</span></span> (2021 - $<span id="xdx_906_eus-gaap--ShortTermBorrowings_iI_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUuOOy0f7qL5" title="Short-term borrowings">811,665</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(b) </b>In
October 2021, the Company signed a new agreement with Midland to replace the expiring credit line at Harris. In June 2022, the
Company closed the account. The revolving line of credit was for an aggregate amount of up to the lesser of (i) $<span id="xdx_90E_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_ztZDNnTv9UEg" title="Aggregate amount of revolving line of credit">3,500,000</span>, or (ii)
<span id="xdx_904_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zMHKyvgnvQok" title="Eligible percentage of domestic accounts receivable">80</span>% of eligible domestic accounts receivable and certain foreign accounts receivable plus <span id="xdx_90F_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zaHHAWh9PMOg" title="Percentage of foreign accounts receivable of inventory">50</span>% of inventory. Interest on the unpaid
principal balance of this loan was calculated using a rate of <span id="xdx_90C_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20211001__20211031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zSFLo58ETDc1" title="Debt effective rate">0.500</span> percentage points over the Index. Under no circumstances was the
interest rate of this loan less than <span id="xdx_90D_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20211031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zvNVmnHj6nk7" 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 was <span id="xdx_906_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zVXDrsCmwTM6" title="Annual interest rate of loan">4.50</span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
revolving line of credit contained 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 required that the Company maintain a minimum ratio of qualifying financial
assets to the sum of qualifying financial obligations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 had granted Midland a security interest
in substantially all of the assets of NanoChem, exclusive of intellectual property assets which has been revoked.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $<span id="xdx_90B_eus-gaap--LinesOfCreditCurrent_iI_dxL_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zTYT0EvEf9X9" title="Line of Credit::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1125">nil</span></span> (December 31, 2021 - $<span id="xdx_90C_eus-gaap--LinesOfCreditCurrent_iI_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zn8eXhahwsIk" title="Line of Credit">1,489,154</span>).</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(c) </b>In
June 2022, ENP Investments signed a new agreement with Stock Yards Bank and Trust (&#8220;Stock Yards&#8221;) to replace the credit
line at Midland. The revolving line of credit is for an aggregate amount of up to the lesser of (i) $<span id="xdx_909_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zISBJdjuPeWk" title="Aggregate amount of revolving line of credit">4,000,000</span>, or (ii) 50-80% of
eligible domestic accounts receivable plus <span id="xdx_902_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zx3TZwsWZbb2" title="Percentage of foreign accounts receivable of inventory">50</span>% of inventory, capped at $<span id="xdx_909_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zjilbkhNHOp8" title="Debt face amount">2,000,000</span>. Interest on the unpaid principal balance of this
loan will be calculated using the greater of prime or 4.0%. The interest rate at December 31, 2022 is <span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zDKbMLgiy4e5" title="Interest rate">7.5</span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards, Stock Yard&#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_90C_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220630__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_ze9COZLioPi4" title="Loan guaranteed rate">65</span>%
of all the principal and other loan costs not to exceed $<span id="xdx_90D_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220630__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zKfWlKSP9DG5" title="Line of credit">2,600,000</span>.
The non-controlling interest is the guarantor of the remaining <span id="xdx_901_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220630__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zGohIFnEXYI6" title="Loan guaranteed rate">35</span>% of all the principal and other loan costs not to exceed
$<span id="xdx_906_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220630__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zTkNEJnKu20d" title="Line of credit">1,400,000</span>. As of December 31, 2022, ENP Investments was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards a security interest
in substantially all of the assets of ENP Investments, exclusive of intellectual property assets.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $<span id="xdx_90A_eus-gaap--ShortTermBorrowings_iI_pp0p0_c20221231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_z7HS3Hs4NKw3" title="Short term borrowings">2,477,794</span> (2021- $<span id="xdx_90C_eus-gaap--ShortTermBorrowings_iI_dxL_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zHrZK1te8wOd" title="Short term borrowings::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1147">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(d) </b>In
June 2022, the Company signed a new agreement with Stock Yards to replace the credit line at Midland. 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_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z53vf9T15Gw" title="Aggregate amount of revolving line of credit">4,000,000</span>, or (ii) <span id="xdx_90A_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUX2L4iuddDk" title="Eligible percentage of domestic accounts receivable">80</span>% of eligible domestic accounts receivable and certain
foreign accounts receivable plus <span id="xdx_901_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zlwpkLnfK7Gh" title="Percentage of foreign accounts receivable of inventory">50</span>% of inventory, capped at $<span id="xdx_908_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z4jwX5okdTuc" title="Debt face amount">2,000,000</span>. Interest on the unpaid principal balance of this loan will
be calculated using the greater of prime or 4.0%. The interest rate at December 31, 2022 is <span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20220930__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zB46NH6wknhl" title="Interest rate">7.5</span>%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards, Stock Yards 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, 2022, the Company was in compliance with all loan covenants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards 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; 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; 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, 2022 were $<span id="xdx_907_eus-gaap--ShortTermBorrowings_iI_c20221231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zdXrzBgWUbVb" title="Short term borrowings">340,797</span> (2021 - $<span id="xdx_906_eus-gaap--ShortTermBorrowings_iI_dxL_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_ziw47pP41Epl" title="Short term borrowings::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1161">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for short-term debt.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>32
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318612048">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtTextBlock', window );">LONG TERM DEBT</a></td>
<td class="text"><p id="xdx_804_eus-gaap--LongTermDebtTextBlock_zRFbY4mn6d63" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>12.
<span>Long Term Debt</span> </b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"><span id="xdx_828_zDf2pZXt09ui">LONG TERM DEBT</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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
January 2018, ENP Investments signed a $<span id="xdx_90A_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_ztPQj5Qm9Gf9" title="Debt instrument face amount">200,000</span> promissory note with Midland with a rate of <span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zw79SbEFodEj" title="Debt instrument interest rate stated percentage">5.250</span>% to be repaid over <span id="xdx_90B_eus-gaap--DebtInstrumentTerm_dtY_c20180101__20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zQ3Zickc0G9" title="Debt instrument term">7</span> years with
equal monthly installments plus interest. This money was used to purchase production equipment and interest for the year ended
December 31, 2021 was $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z7MD0D9Ug1l" title="Interest expense debt">2,788</span>. In May 2021, ENP Investments paid the loan in full with cash on hand.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 2020, NanoChem received a <span id="xdx_903_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z4jYjw2NQQl4" title="Debt instrument term">two year</span> loan of $<span id="xdx_901_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z8LngB6jG4yi" title="Debt instrument face amount">322,000</span> through the Paycheck Protection Program with a rate of <span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_za3XjW5510w4" title="Debt instrument interest rate stated percentage">1</span>%. In March 2021,
the loan was forgiven by the SBA and has been recorded as Other Income in the consolidated statements of operations and
comprehensive income for the year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(c) </b>In
April 2020, ENP Investments received a <span id="xdx_909_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zCKfvO57F4r" title="Debt instrument term">two year</span> loan of $<span id="xdx_90B_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zxcQgn2bcTfd" title="Debt instrument face amount">215,960</span> through the Paycheck Protection Program with a rate of <span id="xdx_90D_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zt5B7I6sgvje" title="Debt instrument interest rate stated percentage">1</span>%. In March
2021, the loan was forgiven by the SBA and has been recorded as Other Income in the consolidated statements of operations and
comprehensive income for the year ended December 31, 2021.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(d) </b>In
October 2020, NanoChem signed a $<span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zZtZoEgVL6r6" title="Debt instrument face amount">1,980,947</span> term loan with Midland with a rate of <span id="xdx_901_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_zHtHKAT4Qu3j" 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_zFqLhyZud7A2" 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_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zHFwVqWL0aKc" title="Debt instrument interest rate stated percentage">65</span>% interest in ENP
Investments. In June 2022, the loan was paid in full with funds from Stock Yards. Interest expense for the year December 31, 2022
was $<span id="xdx_900_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zKvkvCU1N01a" title="Debt Long term debt amount">30,334</span> (2021 - $<span id="xdx_908_eus-gaap--InterestExpenseDebt_c20210101__20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zyPVInj5i7W3" title="Debt Long term debt amount">69,831</span>). The balance owing at December 31, 2022 was $<span id="xdx_90B_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zIGq1lMwgcse" title="Debt default long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1197">nil</span></span> (2021 - $<span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z52Cp5G4mOHh" title="Debt Long term debt amount">1,554,044</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(e) </b>In
October 2020, NanoChem signed a loan for $<span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zAlqWStcJtV5" title="Debt instrument face amount">894,253</span> with Midland with an interest rate <span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zc5SPKTLEM64" title="Debt instrument interest rate stated percentage">3.85</span>% to be repaid over <span id="xdx_907_eus-gaap--DebtInstrumentTerm_dc_c20201001__20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zr1x3q3VMoA2">two years</span> with equal
monthly payments including interest. The funds were used to replace the loan at Harris for the purchase of new manufacturing
equipment. In June 2022, the loan was paid in full with funds from Stock Yards. Interest expense for the year ended December 31,
2022 was $<span id="xdx_907_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zTOYhIjICgF6" title="Interest expense debt">5,816</span> (2021 - $<span id="xdx_90D_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zwLDWfyf242a" title="Interest expense debt">24,827</span>). The balance owing at December 31, 2022 was $<span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zEhaCT7AS0ri" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1210">nil</span></span> (2021 - $<span id="xdx_90A_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFDbXietLLq4" title="Debt Long term debt amount">381,674</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(f) </b>In
January 2020, ENP Mendota refinanced its mortgage and signed a loan for $<span id="xdx_901_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zknHy8voM714" title="Debt instrument face amount">450,000</span> with Stock Yards to be repaid over <span id="xdx_90D_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_z7dzb51NeFv2" title="Debt instrument term">10</span> years with
monthly installments plus interest. Interest for the first five years is at <span id="xdx_905_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zVVrZnvxaML6" title="Debt instrument interest rate">4.35</span>% and it will be adjusted for the last five years to
the Cincinnati Federal Home Bank Loan <span id="xdx_907_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zOzX1VeKAlT1" title="Debt instrument term">5</span> year fixed index plus <span id="xdx_906_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zqpWDfpkMor9">2.5</span>%. Interest expense for the year ended December 31, 2022 was
$<span id="xdx_909_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_z0ZWQoMBzA3c" title="Interest expense debt">18,590</span> (2021 - $<span id="xdx_908_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zSmZasUuPETi" title="Interest expense debt">17,107</span>). The balance owing at December 31, 2022 is $<span id="xdx_90B_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zju78pMnKWye" title="Debt default longterm debt amount">415,430</span> (2021 - $<span id="xdx_901_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zlXEZ1b3SV54" title="Debt default longterm debt amount">430,880</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(g) </b>In
June 2022, NanoChem signed a loan for $<span id="xdx_902_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zth5VqZAvlpj" title="Debt instrument face amount">1,935,000</span> with Stock Yards with an interest rate of <span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemMember_zQfwss3h4ye" title="Debt instrument interest rate stated percentage">4.90</span>% to be repaid
over <span id="xdx_908_eus-gaap--DebtInstrumentTerm_dc_c20220601__20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zZnTzhPLuLqk">three years</span> with equal monthly payments including interest. The funds were used to replace the loans at Midland for the
purchase of the <span id="xdx_905_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zjv0peSvXS96" title="Debt instrument interest rate stated percentage">65</span>% interest in ENP Investments and the new manufacturing equipment. Interest expense for the year ended December
31, 2022 was $<span id="xdx_908_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_z8KEOSlLKyrf" title="Interest expense debt">45,113</span> (2021 - $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zfrRp9fZcqC4" title="Interest expense debt::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1240">nil</span></span>). The balance owing at December 31, 2022 is $<span id="xdx_902_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zBKz7eHjvIZk" title="Debt Long term debt amount">1,632,672</span> (2021 - $<span id="xdx_903_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zWWPODcvoDR1" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1244">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(h) </b>In
January 2020 ENP Peru signed a $<span id="xdx_90C_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zKUqKDxzXqY1" title="Debt instrument face amount">3,000,000</span> loan with an interest rate <span id="xdx_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zt10JBiYicze" title="Debt instrument interest rate stated percentage">4.35</span>% to be repaid over <span id="xdx_902_eus-gaap--DebtInstrumentTerm_c20200101__20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zPvYgVNGMfgb">ten years</span> with equal monthly payments
including interest. Upon the purchase of the remainder of ENP Peru in June 2022, the Company assumed the first mortgage at Stock
Yards with a balance of $<span id="xdx_906_eus-gaap--LoansPayable_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zOL8pqPAb9J7" title="First mortgage">2,849,500</span>. Interest expense for the year ended December 31, 2022 was $<span id="xdx_90F_eus-gaap--InterestExpense_pp0p0_c20220101__20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zoYHB9J8VfE" title="Interest expense">62,679</span> (2021 - $<span id="xdx_909_eus-gaap--InterestExpense_pp0p0_dxL_c20210101__20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zrqFxY2gVLp9" title="Interest expense::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1255">nil</span></span>). The balance
owing at December 31, 2022 was $<span id="xdx_904_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_z5AElCPQOdRj" title="Debt instrument face amount">2,813,015</span> (2021 - $<span id="xdx_90E_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zj8ttVLYgaD5" title="Debt instrument face amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1259">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(i) </b>In
June 2022, ENP Peru Investments obtained a second mortgage for $<span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_z2Ae4ch8KJ08" title="Debt instrument face amount">259,000</span> with Stock Yards to be repaid over <span id="xdx_901_eus-gaap--DebtInstrumentTerm_c20220601__20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zxDAJGqGRlS1" title="Debt instrument term">10 years</span> with monthly
installments plus interest with an interest rate of <span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zNEfDhbz4x6b" title="Debt instrument interest rate stated percentage">5.4</span>%. Interest expense for the year ended December 31, 2022 was $<span id="xdx_906_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zXdm5BB1C5nl" title="Interest expense debt">7,077</span> (2021 -
$<span id="xdx_903_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zgep0qEszd99" title="Interest expense debt::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1269">nil</span></span>). The balance owing at December 31, 2022 was $<span id="xdx_908_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zhdIy7nJzu92" title="Debt Long term debt amount">256,162</span> (2021 - $<span id="xdx_903_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zAxouUXyIseg" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1273">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(j) </b>In
December 2022, NanoChem signed a three year loan for up to $<span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zO76KkzWIqo4" title="Debt instrument face amount">2,000,000</span> with Stock Yards with an interest rate of <span id="xdx_90E_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemMember_zQGIRB3vPRy9" title="Debt instrument interest rate stated percentage">6.5</span>%. Interest only
payments are required for the first 18 months with interest and principal being paid in the last 18 months. The funds are being used
to purchase new manufacturing equipment. Interest expense for the year ended December 31, 2022 was $<span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember_z6uO7lYjSO5f" title="Interest expense debt">23,632</span> (2021 - $<span id="xdx_900_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember_zYF5zWZYOL87" title="Interest expense debt::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1281">nil</span></span>). The
balance owing at December 31, 2022 is $<span id="xdx_909_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zA4eTkPDqDwi" title="Debt Long term debt amount">1,036,798</span> (2021 - $<span id="xdx_901_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zmAdhmJ46N3g" title="Debt Long term debt amount::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1285">nil</span></span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, Company was in compliance with all loan covenants.</span></p>

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

<p id="xdx_894_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zHvC8QzbWMe2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_zGAiJVg2lanh" 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_49F_20220101__20221231_ze0EakRylO8f" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zolYBd71smf7" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iS_zdqP51N4peD5" 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">2,366,598</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">3,847,638</td><td style="width: 1%; 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_409_eus-gaap--LongTermDebt_iS_zd79v3S0ljHf" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Balance, beginning of period</span></td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,366,598</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">3,847,638</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_405_eus-gaap--ProceedsFromBankDebt_za4GshHnUdQ2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Plus: Proceeds from loans</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,230,798</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1296">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--ProceedsFromLoanAcquiredFromAcquisition_zDplANtj8P94" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Plus: Loan acquired with acquisition of ENP Peru</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,849,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1299">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--RepaymentsOfBankDebt_iN_di_zDtkTrNJwSL4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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"><span style="-sec-ix-hidden: xdx2ixbrl1301">-</span></td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_409_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_di_zkAX6MoqQBlk" style="vertical-align: bottom; background-color: White">
    <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">(2,292,819</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">(943,080</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--LongTermDebt_iE_zrYp6fU5hSGb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, end of period</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">6,154,077</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">2,366,598</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_892_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zPdLB1tFg7X1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zXe9nTd2vvvb" style="display: none">SCHEDULE
OF OUTSTANDING BALANCE LOAN</span></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></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 at December 31,</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20221231_zpDDkwj5qB3h" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_490_20211231_zIbuCvsdwZgh" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z51OvFVDsBJ" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">a) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1312">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1313">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zOp9DOIG4vl5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">b) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1315">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1316">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zAF6NKBZo486" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">c) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1318">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1319">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zANa440uuUp5" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left">d) Long term debt &#8211; Midland States Bank</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1321">-</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: 16%; text-align: right">1,554,044</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zcSpDytAmH0c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">e) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1324">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">381,674</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zRATjAqHNIOf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">f) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">415,430</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">430,880</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustTwoMember_zbSIOlIqDCQ1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">g) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,632,672</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1331">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustThreeMember_zTIJQNJq55Gh" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">h) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,813,015</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1334">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFourMember_zWqqgO20BRFg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">i) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">256,162</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1337">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFiveMember_z7GugtLGDPxk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">j) 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 style="border-bottom: Black 1.5pt solid; text-align: right">1,036,798</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"><span style="-sec-ix-hidden: xdx2ixbrl1340">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--LongTermDebt_iI_zzlCYBCc0itk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Total</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,154,077</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,366,598</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LongTermDebtCurrent_iNI_di_zbdjpnjAF9pi" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">(717,612</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">(793,574</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebtNoncurrent_iI_zcrrS4XZ0s6k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Long term debt</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">5,436,465</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,573,024</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_8AA_zMkclYKLDyQc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>33
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318408400">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">INCOME TAXES</a></td>
<td class="text"><p id="xdx_800_eus-gaap--IncomeTaxDisclosureTextBlock_zCQgZ7eLuYf9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>13.
<span>Income Taxes</span> </b></span></p>

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

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

<p id="xdx_895_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z3wOe1Zl9r8e" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zpWjriyJZ2g9" 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_49B_20220101__20221231_zOrbSzqvbztd" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20210101__20211231_zVlMaxgLp4d4" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zHWhd8rmwiVf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Current tax, federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">1,017,059</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,309,503</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_zLdopQG8Faak" 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">460,098</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_z3eKKdARv68i" 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">216,082</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">91,285</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--CurrentTax_pp0p0_mtCITEBzvlG_maCITEBzPIr_zXL3EDO1lREg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,693,239</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_40D_ecustom--IncomeTaxRecovery_pp0p0_maCITEBzPIr_zSDSptipEWG5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-align: left">Income tax 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">(1,476,088</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"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--CurrentIncomeTaxExpenseBenefits_iT_mtCITEBzPIr_maITEBz5Oq_z7ujDL1kONY5" 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">217,151</td><td style="text-align: left">&#160;</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></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_zUPjLo5tZ1y2" 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">(49,088</td><td style="text-align: left">)</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></tr>
  <tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zAWsGCb8ugd4" 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">(22,207</td><td style="text-align: left">)</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></tr>
  <tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_z6KAAmxQH5I9" 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">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1379">-</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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1380">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz5Oq_zCC3522t8fqa" 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">(71,295</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">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz5Oq_z3yQwZFDvhLj" 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">145,856</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">2,356,499</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A4_zjCNQQQyu7E7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

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

<p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zPQx4ry3mHIh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zkV0Z8yt88H3" style="display: none">SCHEDULE
OF RECONCILIATION OF INCOME TAXES</span>&#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" id="xdx_499_20220101__20221231_zJbWP80Qm3u8" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20210101__20211231_zXK2frTkD0J5" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_zu2ACpSeLdd2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Income before tax</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">7,859,085</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">6,650,756</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zHOsrbibMjCb" 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_z7IsTOAt4qDc" 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,397,021</td><td style="text-align: left">&#160;</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></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">(243,167</td><td style="text-align: left">)</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></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">(2,004,041</td><td style="text-align: left">)</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></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"><span style="-sec-ix-hidden: xdx2ixbrl1405">-</span></td><td style="text-align: left">&#160;</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></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">(226,611</td><td style="text-align: left">)</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></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">222,654</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">(171,288</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">145,856</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">2,356,499</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_401_eus-gaap--CurrentIncomeTaxExpenseBenefit_z8gaW7vaD2ea" 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">217,151</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZYhwLVYogt7" 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">(71,295</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">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zdwexhlosr83" 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">145,856</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">2,356,499</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Included
in current income tax expense for the year ended December 31, 2022 is a recovery of $<span id="xdx_902_ecustom--CurrentIncomeTaxExpense_c20220101__20221231_zr8JQ2vWOJ9b" title="Current income tax expense">1,476,088</span> (2022 - $<span id="xdx_908_ecustom--CurrentIncomeTaxExpense_dxL_c20210101__20211231_znaO4oa2lkK" title="Current income tax expense::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1428">nil</span></span>) for a revision of estimated
current taxes payable for previous years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zMB7472eQDAg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021 are comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zzyVvVHj7Kvj" style="display: none">SCHEDULE
OF DEFERRED TAX ASSETS (LIABILITIES)</span>&#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">2022</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">2021</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: 60%; 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_98F_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjBkFtcjWMu8" style="width: 16%; text-align: right" title="Non capital loss carryforwards">891,954</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--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCK9kRgBTm6g" style="width: 16%; text-align: right" title="Non capital loss carryforwards">1,443,371</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_98C_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zIVYodqoJ8T8" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1436">-</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--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z82Sh7XhYAS3" style="text-align: right" title="Intangible assets">19,849</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; text-align: left; padding-left: 10pt">Property, equipment and leaseholds</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--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zheTqIjX1U09" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds">47,279</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_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zR14AboH1Wa3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds">587,408</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 id="xdx_983_eus-gaap--DeferredTaxAssetsGross_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zVc36RcNa9D7" style="text-align: right" title="Deferred tax assets gross">939,230</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGross_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjaYq5VYZAwe" style="text-align: right" title="Deferred tax assets gross">2,050,628</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">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_98F_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zO9F5MXypChe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance">(939,230</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_982_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zopsoBfKYZZ6" 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></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</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--DeferredTaxAssetsNet_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zxN5S0uydLch" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1452">-</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_98A_eus-gaap--DeferredTaxAssetsNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zPk79oavyO92" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1454">-</span></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 style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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: 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">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2022</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">2021</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-left: 10pt">Net operating loss carryforwards</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zx7quhVoLHwh" style="text-align: right" title="Net operating loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1456">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zW8f6rDgp2A5" style="text-align: right" title="Non capital loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1458">-</span></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">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z9lsNWqmf2Q4" style="text-align: right" title="Intangible assets">(6,070</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8SXjfhiTNBc" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1462">-</span></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">Investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zzZlTpuEXbd" style="text-align: right" title="Investments">(7,676</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zf8Mx9acdJHc" style="text-align: right" title="Investments">(241,880</td><td style="text-align: left">)</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--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0bPn1tEEsj" style="text-align: right" title="Property, equipment and leaseholds">(486,713</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zIyG7HRHkTti" style="text-align: right" title="Property, equipment and leaseholds">(68,282</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_98B_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zNgwkBj4uGXk" style="text-align: right" title="Property, equipment and leaseholds">274,289</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z17Hp0ue0ro7" style="text-align: right" title="Property, equipment and leaseholds">12,697</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">Financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zOYiX6FunMEh" style="text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1476">-</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_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zBBwqFKJj641" style="text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1478">-</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-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_980_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zfX9Mj4pIYq2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1480">-</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_98A_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zt73E9P3Zomk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1482">-</span></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; 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_980_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zmtJbt7yFYx9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)">(226,170</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_98A_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_ziqaVAZKYX83" 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></tr>
  </table>

<p id="xdx_8A7_znlWgEzHn77" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_90D_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zQIHDJnEewH5" title="Operating loss carryforwards">3,878,060</span> (2021 - $<span id="xdx_900_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z35R063Dmsi3" title="Operating loss carryforwards">6,275,526</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_895_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zvWxHL3QZ2gi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zDB4pPETi302" 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>&#160;</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: 52%; text-align: right">2030</td><td style="width: 0%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zreS5k1wcIRa" style="width: 46%; text-align: right" title="Total">645,781</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneYearMember_zU6OVSGS3Pr7" style="text-align: right" title="Total">919,683</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">2032</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTwoYearMember_zy3xV3FApd38" style="text-align: right" title="Total">601,379</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_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenYearMember_zlpxDUt1lULl" style="text-align: right" title="Total">1,652,709</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">2039</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineYearMember_zAtu4w90EDpc" style="text-align: right" title="Total">46,917</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">2040</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--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandFourtyYearMember_zU2QzuyHGOLa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">11,591</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_98E_eus-gaap--OperatingLossCarryforwards_iI_c20221231_zOJw2uzcgMn2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">3,878,060</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AA_zFAOflZ4jng7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2022, 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; 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; 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
at December 31, 2022 and 2021, the Company&#8217;s consolidated balance sheets did not reflect an asset 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; 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"><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; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>34
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318448192">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">INCOME PER SHARE</a></td>
<td class="text"><p id="xdx_808_eus-gaap--EarningsPerShareTextBlock_zsNcB4UXsvO2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>14.
<span>Income Per Share</span> </b></span></p>

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

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

<p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_z6smLswLQgE4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zDGtTpiF1VIi" 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20220101__20221231_zAIa64gXVbui" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_ztb3sm9hHuTk" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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: 60%; 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: 16%; text-align: right">7,021,604</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">3,449,162</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_zkwImRlX5SG3" 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,379,316</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zAGSN3yKH4m" 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,466,415</td><td style="text-align: left">&#160;</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></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_409_eus-gaap--EarningsPerShareBasic_zq5nc3uue8Pa" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.57</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.28</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--EarningsPerShareDiluted_zUNarqe6c643" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">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.56</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.28</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A4_zAB4pHz57Edk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 15, &#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_890_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_z7T04V8PGijb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zB0nYfc3ecl1" 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_498_20220101__20221231_z8nKvERc6Uig" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_zFMQI4Nhnd81" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1.5pt">Anti-dilutive options</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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right">1,304,000</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">&#160;</td><td style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right">21,000</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A0_zevyv5281C0i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zAGOxAnDrL29" title="Preferred stock, shares issued"><span id="xdx_908_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zi3Am3o5rjz3" title="Preferred stock, shares outstanding"><span id="xdx_900_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3IYB8HJ7Hm" title="Preferred stock, shares issued"><span id="xdx_904_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z1uQWuNldPW8" title="Preferred stock, shares outstanding">no</span></span></span></span> preferred shares issued and outstanding during the years ended December 31, 2022 or 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>35
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318666336">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">STOCK OPTIONS</a></td>
<td class="text"><p id="xdx_801_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zogxM1XrBFRb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>15.
<span>Stock Options</span></b></span><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; text-align: justify; text-indent: 0.5in">&#160;</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_pid_dp_uPure_c20220101__20221231_zhYordnpnMHb" 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_901_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_dtY_c20220101__20221231_za1Lcs8XVk4e" 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; 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_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zxwPch9uAy92" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_zmTrlLWlgpve" 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, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_zxnOtr8Fn5xa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance">749,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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zspUpY3EggRf" title="Exercise price per share, Beginning Balance">0.75</span> &#8211; <span id="xdx_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z06EZ0bv7Gac" title="Exercise price per share, Beginning Balance">4.13</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_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20210101__20211231_zPbqzuSazOP9" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance">2.42</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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_z0JtIv2ZvtT1" 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 style="text-align: right"><span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20210101__20211231_pdd" title="Exercise price per share, Granted">3.61</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zrSt66uLRGk2" 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_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Cancelled or expired">1.42</span> &#8211; <span id="xdx_90A_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zh6BlQjD887d" 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 style="text-align: right"><span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zeFDpFUZCxok" title="Weighted average exercise price, Cancelled or expired">2.30</span></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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_ziqYSKiISl3h" 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_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Exercised">0.75</span> &#8211; <span id="xdx_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_pdd" 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_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">&#160;&#160;&#160;&#160;&#160;&#160;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>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20220101__20221231_zXoB3eETXFcb" style="text-align: right" title="Number of shares, Beginning Balance">789,500</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_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z2CPNhgPDvFf" title="Exercise price per share, Beginning Balance">1.42</span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zAmMy8PXbfih" 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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20220101__20221231_zivQGeZcGp8h" style="text-align: right" title="Weighted average exercise price, Ending Balance">2.78</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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231_zyjNUl12qMsd" style="text-align: right" title="Number of shares, Granted">981,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_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zyilmJUT4Mh1" title="Exercise price per share, Granted">3.55</span> &#8211; <span id="xdx_903_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_z98lS7YJsExd" title="Exercise price per share, Granted">3.61</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20220101__20221231_z2i1Jnf6MrL2" style="text-align: right" title="Weighted average exercise price, Granted">3.55</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_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20220101__20221231_zejewlsH9Hr8" style="text-align: right" title="Number of shares, Cancelled or expired">(13,486</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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z7DzanglMKh8" title="Exercise price per share,cancelled">1.70</span> &#8211; <span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zCEI6SlljaLc" title="Exercise price per share,cancelled">3.61</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zLIKtxrGifU2" style="text-align: right" title="Weighted average exercise price, Cancelled or expired">2.32</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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20220101__20221231_zv8bsJSM4Hul" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised">(71,014</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_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_ztJFxzAjkyvd" title="Exercise price per share, Exercised">1.42</span> &#8211; <span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zUckAKWhdlZg" title="Exercise price per share, Exercised">2.44</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--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20220101__20221231_zauAjwQKkhok" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">1.98</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, 2022</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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20220101__20221231_zre1ahLqdHq7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance">1,686,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">$</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_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zV4cec7jDHth" title="Exercise price per share, Ending Balance">1.70</span> &#8211; <span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zf65g4SxRv9a" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_c20220101__20221231_zCsjq6OTksr9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance">3.26</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, 2022</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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20220101__20221231_ztFK1xRSx3Ea" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance">680,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">$</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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z8R8xLcYrbak" title="Exercise price per share Exercisable, Ending Balance">1.70</span> &#8211; <span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zoY0f2cYHXy7" 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_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_c20220101__20221231_zbuOYWAvdxqi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance">2.92</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AC_zxQwhiUnhdG7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20220101__20221231_zxT1fFOz2tPi" title="Weighted-average remaining contractual life">3.90</span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_z7fpM6eQ7YVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_z4M53mEL2Ge3" 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; border-collapse: collapse; width: 90%; margin-left: 0.5in">
  <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">2022</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">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; 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: 16%; text-align: right"><span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20220101__20221231_zkVa0On95SZi" 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: 16%; text-align: right"><span id="xdx_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_zhr5t9Jav4Th" 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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zy7dDJfkvWNh" title="Interest rate">1.76</span> &#8211; <span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_znpoj4AtCcF7" title="Interest rate">3.64</span></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_zBhyq8BPRq88" title="Interest rate">1.23</span></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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zMwDBd9DmNTl" title="Volatility">66.01</span>
- <span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zzPIwQBGYV2e" title="Volatility">69.66</span></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_z8bHMwqZa0x4" title="Volatility">63.28</span></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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zDWg1O60ipi4" title="Weighted average fair value of options granted">1.46</span> &#8211; <span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zw9X1pKbfXJh" title="Weighted average fair value of options granted">1.65</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zecYNL0YIWLc" title="Weighted average fair value of options granted">1.23</span></td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AC_zTwPeiVyYqDg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022, the Company granted <span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z3cLGeDzKBvh" title="Stock options granted">46,000</span> (2021 &#8211; <span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z4oOnTevuYk4" 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_90B_eus-gaap--StockOptionPlanExpense_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zfbMKQ4gNNF" title="Stock option expense">14,850</span> (2021 - $<span id="xdx_903_eus-gaap--StockOptionPlanExpense_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zkDvEUxYGZT" title="Stock option expense">13,860</span>). Options granted in other years
resulted in additional expenses of $<span id="xdx_900_ecustom--AdditionalExpensesDueToOptionsGranted_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zFxRxYjnvlJg" title="Additional expenses due to options granted">62,187</span> (2021 &#8211; $<span id="xdx_904_ecustom--AdditionalExpensesDueToOptionsGranted_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z3KlllCNcHt8" title="Additional expenses due to options granted">51,210</span>). During the year ended December 31, 2022, employees were granted <span id="xdx_903_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zkhY4H8qcC8b" title="Stock options granted">935,000</span>
(2021 &#8211; <span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zITA2fLwZpOk" title="Stock options granted">125,000</span>) stock options, which resulted in expenses of $<span id="xdx_908_eus-gaap--StockOptionPlanExpense_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zQLW1C8YT1L3" title="Stock option expense">172,731</span> (2021 &#8211; $<span id="xdx_904_eus-gaap--StockOptionPlanExpense_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z57hHZNvlHo" title="Stock option expense">38,500</span>). Options granted in other years resulted
in additional expenses in the amount of $<span id="xdx_908_ecustom--AdditionalExpensesDueToOptionsGranted_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zG1nkzo1hOaj" title="Additional expenses due to options granted">149,380</span> for employees during the year ended December 31, 2022 (2021 - $<span id="xdx_90D_ecustom--AdditionalExpensesDueToOptionsGranted_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zgvqINJWhai" title="Additional expenses due to options granted">106,542</span>). There were
<span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zAuSgxXj6wM8" title="Stock options exercised">54,500</span> employee and <span id="xdx_906_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zoZehF07nzr9" title="Stock options exercised">16,514</span> consultant stock options exercised during the year ended December 31, 2022 (2021 &#8211; <span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zBhHrh6ZkbXc" title="Stock options exercised">61,500</span> employee;
<span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zmnZWuzHzEh7" title="Stock options exercised">33,201</span> consultant).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, there was approximately $<span id="xdx_904_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pp0p0_c20221231_zYVs7sd7EQA2" title="Stock vested compensation non vested">1,432,960</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_90D_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtM_c20220101__20221231_zq83mTKwFPZh" title="Weighted average period expected to be recognized">3.9</span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 is $<span id="xdx_90D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zUtqorZcrtEg" title="Aggregate intrinsic value of vested options">69,190</span> (2021 &#8211; $<span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zmD7dNcuJc7c" title="Aggregate intrinsic value of vested options">712,945</span>). The intrinsic value
of options exercised during the year ended December 31, 2022 was $<span id="xdx_90C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_c20220101__20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_za2zvUSZlYhg" title="Aggregate intrinsic value of vested options exercised">96,989</span> (2021 - $<span id="xdx_902_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_c20210101__20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCT1gTYkzEX2" title="Aggregate intrinsic value of vested options exercised">203,701</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<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 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>36
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318408400">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">CAPITAL STOCK</a></td>
<td class="text"><p id="xdx_806_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zlDgb3kqVX17" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>16.
<span>Capital Stock</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">. </span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_82B_zrxRWQTobka2">CAPITAL STOCK</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022, <span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20220101__20221231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember_zbGcHeDSYCyk" title="Stock options exercised">54,500</span> shares were issued upon the exercise of employee stock options (2021 &#8211; <span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember_zkak1cLOdVjl" title="Stock options exercised">61,500</span>) and <span id="xdx_905_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20220101__20221231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember__srt--TitleOfIndividualAxis__custom--ConsultantMember_zBPPuqLHCocj" title="Stock options exercised">16,514</span>
shares were issued upon the exercise of consultant stock options (2021 &#8211; <span id="xdx_90F_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember__srt--TitleOfIndividualAxis__custom--ConsultantMember_zjQSCK7D8nO2" title="Stock options exercised">33,201</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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> -URI https://asc.fasb.org/topic&amp;trid=2208762<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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-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 (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&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 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126731327&amp;loc=SL126733271-114008<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>37
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318408400">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterestDisclosureTextBlock', window );">NON-CONTROLLING INTERESTS</a></td>
<td class="text"><p id="xdx_802_eus-gaap--MinorityInterestDisclosureTextBlock_z16HPtiFp8V1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>17.
<span>Non-Controlling Interests</span> </b></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 (&#8220;LLC&#8221;) that manufactures and distributes golf, turf and ornamental
agriculture products in Mendota, Illinois. The Company owns a <span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zzPQ9lwOzoN3" title="Subsidiary company ownership interest rate">65</span>%
interest in ENP Investments through its wholly-owned subsidiary NanoChem. An unrelated party (&#8220;NCI&#8221;) owns the remaining <span id="xdx_908_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zE66O1R9bEel" title="Related party owner ship percentage">35</span>%
interest in ENP Investments. 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 NCI&#8217;s ownership interest in ENP Investments is recorded in non-controlling interests in these
consolidated financial statements. The non-controlling interest represents NCI&#8217;s interest in the
earnings and equity of ENP Investments. ENP Investments is allocated to the TPA segment.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; margin: 0pt; 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; 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; 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_903_eus-gaap--PaymentsToMinorityShareholders_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zWNtLizmxhfg" title="Partnership distribution to non-controlling interest">2,506,518</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_896_ecustom--ScheduleOfDistributionsTableTextBlock_z37h3PNMIgF8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zpuE50pys3sk" style="display: none">SCHEDULE
OF DISTRIBUTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_900_eus-gaap--MinorityInterest_iS_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zefn4r6KjVmk" title="Distribution to noncontrolling interests, Beginning balance">2,561,751</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_980_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zY5i7lcMQxEf" style="text-align: right" title="Distribution">(804,003</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_981_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zzBl4gGkY16f" 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: White">
    <td>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--MinorityInterest_iS_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zQQ1mv3gv25k" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance">2,602,843</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_988_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zRntTrdpcRxj" style="text-align: right" title="Distribution">(689,434</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_98E_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_z7Ev46Utgera" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income">691,625</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, 2022</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--MinorityInterest_iE_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zCwbSJ8pdeC1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance">2,605,034</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A2_z8xIyJomh2Wf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2022, the Company had sales of $<span id="xdx_904_eus-gaap--Revenues_c20220101__20221231__custom--StatementEquityComponentsAxisipAxis__us-gaap--NoncontrollingInterestMember_zZI1h3GlA0Cc" title="Sales">6,667,815</span> (2021 - $<span id="xdx_90B_eus-gaap--Revenues_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zSiG7pZXJPq3" title="Sales">4,877,690</span>) to the NCI, of which $<span id="xdx_90B_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zZJsFg4TnQUe" title="Accounts receivable">3,634,083</span> is included within Accounts Receivable as of December 31, 2022 (2021 &#8211; $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zgwUt3QtbcV8" title="Accounts receivable">2,215,119</span>).</span></span></p>

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



<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b/></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><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_MinorityInterestDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/topic&amp;trid=2197479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>38
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318666336">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</a></td>
<td class="text"><p id="xdx_80A_eus-gaap--SegmentReportingDisclosureTextBlock_zU5g56rY6nYf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>18.
<span>Segmented, Significant Customer Information and Economic Dependency</span></b></span><b><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">.
</span></b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"><span id="xdx_82E_zZ1MSBhVX2R8">SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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 save 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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
Biodegradable polymers, also known as TPA&#8217;s (as shown under the column heading &#8220;BCPA&#8221; below), 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; 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; 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; 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; 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; 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_z7Z8btuCkj9k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zMRQLNxo7j3a" 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="display: none; vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20220101__20221231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zKvja07INZr4" 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" id="xdx_49D_20220101__20221231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zeeSKFpH48hl" 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" id="xdx_49D_20220101__20221231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zea4rkm3Wkaf" 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 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 id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zC17GTw1IMY" 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 style="width: 14%; text-align: right">528,462</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">45,312,007</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">45,840,469</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InterestExpense_zIdrvcu0mnh" 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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1746">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">292,949</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">292,949</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DepreciationNonproduction_zK6Ybe8yMmNh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">33,876</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,243,555</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,277,431</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--IncomeTaxExpenseBenefit_zJphmKrXdUw" 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 style="text-align: right">18,898</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">126,958</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">145,856</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--NetIncomeLoss_zreNNY1vMem8" 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 style="text-align: right">(334,525</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,047,754</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,713,229</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--Segmentassets_zthVwUC0mf54" 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 style="text-align: right">2,810,091</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">48,777,101</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">51,587,192</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zD2BpGRFH8xj" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1766">-</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 style="border-bottom: Black 1.5pt solid; text-align: right">1,981,307</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,981,307</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; 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; 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; 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: 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" id="xdx_49F_20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zCTooJ35VbO2" 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" id="xdx_49D_20210101__20211231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zgrp8wqB2Rpc" 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" id="xdx_491_20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zX69hz1JK1y7" 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 id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zk0IIfgIumab" 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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">34,416,335</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InterestExpense_zUu6FD8UuKPd" 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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1774">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">199,930</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">199,930</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DepreciationNonproduction_zH0EPE47hbhd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">40,247</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">925,688</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">965,935</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_zy6QWXiORxif" 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 style="text-align: right">24,384</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,332,115</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,356,499</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--NetIncomeLoss_zWCfIrszfB58" 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 style="text-align: right">(368,994</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,663,251</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,294,257</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--Segmentassets_zowGpOOAzbdk" 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 style="text-align: right">1,929,537</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">37,621,733</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">39,551,270</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zG3wEH909EC2" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1794">-</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 style="border-bottom: Black 1.5pt solid; text-align: right">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 style="border-bottom: Black 1.5pt solid; text-align: right">782,219</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zvF7m47amyM2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B6_znzandgoWMmi" 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" id="xdx_49B_20220101__20221231_zTd2rk0hK9de" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_498_20210101__20211231_zzNozA9Ek9oa" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_40E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__country--CA_zPqskhkNCZr7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">552,123</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">525,900</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zA91bsqjuLW8" 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 style="border-bottom: Black 1.5pt solid; text-align: right">45,288,346</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">33,890,435</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zU0c1GmPLfMi" 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 style="border-bottom: Black 1.5pt solid; text-align: right">45,840,469</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">34,416,335</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_894_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zSM0dntXikqb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_z7JD6HCLxJsl" style="display: none">SCHEDULE
OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE</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" id="xdx_49C_20221231_z2j1FRu4OSO" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20211231_zkepl3va18A8" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_409_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--CA_zIVj4htYxw6f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">150,890</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">191,752</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--US_zocDXUOKG2pb" 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 style="border-bottom: Black 1.5pt solid; text-align: right">14,699,896</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">10,105,202</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--NoncurrentAssets_iI_zf83vDN2usac" 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 style="border-bottom: Black 1.5pt solid; text-align: right">14,850,786</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">10,296,954</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A4_zPbCa3voqd6i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_907_eus-gaap--AccountsReceivableNet_iI_c20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zbCp893V5Wcc" title="Accounts Receivable, after Allowance for Credit Loss">27,775,617</span> (<span id="xdx_90C_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--ThreeCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zlTQQ7EXmga" title="Stock option exercise percent">61</span>%) of sales made in 2022 (2021 - $<span id="xdx_90B_eus-gaap--AccountsReceivableNet_iI_c20211231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zpmQKjzKByg5" title="Accounts Receivable, after Allowance for Credit Loss">16,917,947</span> or <span id="xdx_90D_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--ThreeCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zjTnnOfZQk5j" title="Stock option exercise percent">49</span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>39
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319501792">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">SUBSEQUENT EVENTS</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--SubsequentEventsTextBlock_zdClwWx3yPDc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font: small-caps 10pt Times New Roman, Times, Serif"><b>19.
<span>Subsequent Events</span>. </b></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company issued <span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20230101__20230331__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zmbwWQnNm4kl" title="Stock options granted">8,000</span>
shares to employees and <span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20230101__20230331__srt--TitleOfIndividualAxis__custom--ConsultantsMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zncavUHT15xg" title="Stock options granted">1,272</span>
shares to consultants upon the exercise of stock options in the three months ended March 30, 2023.</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>40
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264311937376">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><p id="xdx_84C_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zazRiQrOtSdl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)
<i><span id="xdx_863_zKcF4dgaJPMb">Cash and Cash Equivalents</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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="Show.showAR( this, 'defref_FSI_TermDepositsPolicyTextBlock', window );">Term Deposits</a></td>
<td class="text"><p id="xdx_843_ecustom--TermDepositsPolicyTextBlock_z0egtWF4e6kd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)
<i><span id="xdx_86B_z1oQH8A1LHMk">Term Deposits</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
deposits maintained by the Company with banks comprises term deposits. The Company has two term deposits, the first for $<span id="xdx_909_eus-gaap--Deposits_iI_c20221231_zhlpEQpH0bwb" title="Deposit">700,000</span>
that matures in 2023 and pays interest at a rate of <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231_z7aSS1v1inqe" title="Debt interest rate">3.0</span>%.
If withdrawn before maturity, the greater of the loss of accrued interest or $<span id="xdx_905_eus-gaap--InterestPayableCurrentAndNoncurrent_iI_c20221231_zp3VpQbjVBL5" title="Accured interest">150</span>,
plus 1% of the principal shall be levied. The other term deposit for $<span id="xdx_90B_ecustom--OtherTermDeposit_iI_c20221231_zWMzSzrnxkE" title="Other term deposit">300,000</span>
pays 1.3% interest, matures in 2023 and can be withdrawn by the Company at any point without prior notice or penalty on the
principal.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventories and Cost of Sales</a></td>
<td class="text"><p id="xdx_842_eus-gaap--InventoryPolicyTextBlock_zeaVgjM50V31" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(c)
<i><span id="xdx_862_zPjRTXgGmRE2">Inventories and Cost of Sales</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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. Cost is determined on a first-in, first-out basis or weighted average cost
formula 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 (2022 - $<span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_ze7gYqt712ac" title="Sales">433,015</span>; 2021 - $<span id="xdx_90F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zZfdPWsbvrE" title="Sales">465,493</span>). Shipping and handling costs
incurred are included in cost of goods sold (2022 - $<span id="xdx_908_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zh3H76QAZxt1" title="Cost of sales">913,890</span>; 2021 - $<span id="xdx_90A_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zy87PLGBULC8" title="Cost of sales">1,058,674</span>).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy', window );">Allowance for Doubtful Accounts</a></td>
<td class="text"><p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_ziGSUbSIY0oh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(d)
<i><span id="xdx_862_zCf4zWhAYy13">Allowance for Doubtful Accounts</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, Equipment, Leaseholds and Intangible Assets</a></td>
<td class="text"><p id="xdx_845_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_zmApyTRZLNK5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(e)
<i><span id="xdx_86D_zn84cbk4eIkj">Property, Equipment, Leaseholds and Intangible Assets</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zOH9hl7J6SRe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B0_zXclfCEmLkR4" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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: 80%; 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: 49%"><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: 49%"><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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_ztRd9ikOnKV9" 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">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_901_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z77p6PImsJ0j" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zo32bFiXs3gh" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zNMzEAb7yOY4" 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_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zPWqBDoMbVv" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zXC5UmZH81J9" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zCjKXAFyZ23f" 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_907_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_z4RuVp7DBong" 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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zxoxGw8w76z" 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_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z1XrN8TFIK1l" 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 </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_903_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--CustomerRelationshipsMember_zQGyUOKauyUb" 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
    </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_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareMember_zMsy4SHmjndg" 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_8AC_zx2MO2p9RHvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment of Long-Lived Assets</a></td>
<td class="text"><p id="xdx_84D_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zOk0PIZVKmLl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(f)
<i><span id="xdx_86B_zymt0U4CtS8a">Impairment of Long-Lived Assets</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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>Property, Plant and Equipment</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; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency</a></td>
<td class="text"><p id="xdx_845_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_z0Vioh4spxeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(g)
<i><span id="xdx_867_zgWr1WjPiyr9">Foreign Currency</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; text-align: justify"><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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zx9nyMvM2uC2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(h)
<i><span id="xdx_86E_zqtTMryuchT5">Revenue Recognition</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
18.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 free-on-board
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; 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; 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; 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; 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; text-align: justify; text-indent: 1in"><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="Show.showAR( this, 'defref_FSI_StockIssuedInExchangeForServicesPolicyTextBlock', window );">Stock Issued in Exchange for Services</a></td>
<td class="text"><p id="xdx_846_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zxTgKl7lUTH1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(i)
<i><span id="xdx_864_z2VJsu9smxM7">Stock Issued in Exchange for Services</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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"><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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CompensationRelatedCostsPolicyTextBlock', window );">Stock-based Compensation</a></td>
<td class="text"><p id="xdx_845_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zKZA4jCplGwh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(j)
<i><span id="xdx_868_zH3DgkOzs263">Stock-based Compensation</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; 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; 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; 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomePolicyPolicyTextBlock', window );">Other Comprehensive Income</a></td>
<td class="text"><p id="xdx_844_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zlxCLSa6fOmb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(k)
<i><span id="xdx_86E_zy1cTJIDrKEf">Other Comprehensive Income</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 related to the translation of subsidiaries&#8217; functional currency into the reporting currency.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Income Per Share</a></td>
<td class="text"><p id="xdx_84D_eus-gaap--EarningsPerSharePolicyTextBlock_zY3jIEuSS1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(l)
<i><span id="xdx_86A_z8ck7T4gSKEl">Income Per Share</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 the years ended December
31, 2022 and 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><p id="xdx_846_eus-gaap--UseOfEstimates_zrumup7AyQik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(m)
<i><span id="xdx_86C_z8sTHA7m8L2l">Use of Estimates</span></i>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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; 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; 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; 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; 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; 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, 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 and the valuation of inventory.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments</a></td>
<td class="text"><p id="xdx_843_eus-gaap--FairValueOfFinancialInstrumentsPolicy_zIjCAySF2sb4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(n)
<i><span id="xdx_867_zm6IdG6A2nvb">Fair Value of Financial Instruments</span>.</i></span></p>

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




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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></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"><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"><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"><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">&#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"><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">&#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; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of cash, 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; 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; 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 approximate 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; text-align: center"><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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesPolicyTextBlock', window );">Contingencies</a></td>
<td class="text"><p id="xdx_84A_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zjbHjtvyr5C5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zet6bHsrErGg">Contingencies</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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; 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; 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. The Company is not aware of any contingencies at the date of these consolidated financials statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p id="xdx_842_eus-gaap--IncomeTaxPolicyTextBlock_zZMgNq2KcDNe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(p)
<i><span id="xdx_866_zoxYsO3rEui4">Income Taxes</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 computed by multiplying the Company&#8217;s <span style="font-family: Times New Roman, Times, Serif">taxable
</span>net income by the Company&#8217;s effective tax rates. Deferred income tax assets and liabilities are recognized for the future tax consequences
attributable to differences between the <span>consolidated</span> financial statement carrying amounts of existing
assets and liabilities and their respective tax bases, and operating loss carry-forwards, <span>if any</span>. Deferred
income 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 income tax assets and liabilities of a change in
tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to reduce the carrying
amount of deferred income tax assets if it is considered more likely than not that some portion, or all, of the deferred income tax assets
will not be realized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 740, <i>Income taxes</i> (ASC 740) 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, 2022, 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




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

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

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Risk Management</a></td>
<td class="text"><p id="xdx_846_eus-gaap--ConcentrationRiskCreditRisk_z7zMXGIcafY9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zfVzWjpTjH75">Risk Management</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; margin: 0pt; 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_905_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zzsCVFT5YIm5" title="Sales">27,775,617</span>
(<span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_z0EDxo9FgWEl" title="Accounts receivable, after allowance for credit loss">61</span>%) for the year ended December 31, 2022 (2021 - $<span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zuRfBH2lIaQ5" title="Sales">16,917,947</span> or <span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zwe1PI7n21j" title="Accounts receivable, after allowance for credit loss">49</span>%). Accounts receivable for the Company&#8217;s three primary customers
totaled $<span id="xdx_904_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z0Glx4WSJjMl" title="Accounts receivable, after allowance for credit loss">6,124,424</span> (<span id="xdx_907_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zwBakjUGHaxf" title="Accounts receivable, after allowance for credit loss, percentage">65</span>%) at December 31, 2022 (2021 - $<span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z6NIde61G83j" title="Accounts receivable, after allowance for credit loss">4,940,995</span> or <span id="xdx_90C_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkW2vXSnAjQg" title="Accounts receivable, after allowance for credit loss, percentage">69</span>%).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
credit risk on cash is limited because the Company limits its exposure to credit loss by placing its cash 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; 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; 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; 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; 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, 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; 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; 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; 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; 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; text-align: justify; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsPolicy', window );">Equity Method Investment</a></td>
<td class="text"><p id="xdx_845_eus-gaap--EquityMethodInvestmentsPolicy_zETmP5gP4c4f" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(r)
<i><span id="xdx_861_zn4gwZImqwM4">Equity Method Investment</span>.</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_904_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20220101__20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--InvestmentMember_zZ3qzx6VNFu2" title="Equity method investment, description">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; 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock', window );">Goodwill and Intangible Assets</a></td>
<td class="text"><p id="xdx_844_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_ziV4ZDSAspjh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(s)
<i><span id="xdx_867_zHsFqoWjWKGc">Goodwill and Intangible Assets</span>.</i></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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.
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; 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; 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 350, <i>Intangibles &#8211; Goodwill and Other, </i>(ASC 350), qualitative assessments of goodwill
and indefinite-lived intangible assets were performed in 2022 and 2021. 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 amounts. 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, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><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; 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Recent Accounting Pronouncements</a></td>
<td class="text"><p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zjXTjhs11Tvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(t)
<i><span id="xdx_863_zAjxh6jBNKZ">Recent Accounting Pronouncements</span>.</i></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock Issued In Exchange For Services [Policy Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_FSI_TermDepositsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term Deposits [Policy Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_TermDepositsPolicyTextBlock</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4273-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126907703&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 https://asc.fasb.org/extlink&amp;oid=6491354&amp;loc=d3e6049-115624<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit risk.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=126941378&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<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 21D<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=SL94080555-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13279-108611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/topic&amp;trid=2175825<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GoodwillAndIntangibleAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<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> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI https://asc.fasb.org/topic&amp;trid=2126998<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(6)(b))<br> -URI https://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 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126900757&amp;loc=d3e543-108305<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 https://asc.fasb.org/extlink&amp;oid=126899994&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 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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> -URI https://asc.fasb.org/topic&amp;trid=2122394<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126987489&amp;loc=SL124442142-165695<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=126986314&amp;loc=SL124402458-218513<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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 1<br> -Subparagraph (b)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126986314&amp;loc=SL124402458-218513<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=d3e31137-122693<br><br>Reference 12: 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 https://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<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 (h)(2)<br> -URI https://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 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 15: 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 https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL122150809-237846<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 (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&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 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=SL108384541-122693<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 10<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128293352&amp;loc=SL126838806-209984<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 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 20: 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 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 10<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128293352&amp;loc=SL126838806-209984<br><br>Reference 22: 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 2<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br><br>Reference 25: 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 2<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 27: 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 https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<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 (a)<br> -URI https://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 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 31: 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 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL125981372-237846<br><br>Reference 32: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<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 1<br> -Subparagraph (b)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 34: 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 https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5144-111524<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99893-112916<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126899994&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>41
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318421920">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_FSI_ScheduleOfMethodOfDepreciationTableTextBlock', window );">SCHEDULE OF METHOD OF DEPRECIATION</a></td>
<td class="text"><p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_zOH9hl7J6SRe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B0_zXclfCEmLkR4" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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: 80%; 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: 49%"><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: 49%"><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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_ztRd9ikOnKV9" 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">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_901_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z77p6PImsJ0j" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zo32bFiXs3gh" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zNMzEAb7yOY4" 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_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zPWqBDoMbVv" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zXC5UmZH81J9" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zCjKXAFyZ23f" 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_907_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_z4RuVp7DBong" 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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zxoxGw8w76z" 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_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z1XrN8TFIK1l" 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 </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_903_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--CustomerRelationshipsMember_zQGyUOKauyUb" 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
    </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_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareMember_zMsy4SHmjndg" 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Method Of Depreciation [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>42
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319640128">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock', window );">SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY</a></td>
<td class="text"><p id="xdx_894_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_zjqrXHh7ecy1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zcWt63vyDvj8" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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; border-collapse: collapse; width: 90%; margin-left: 0.5in">
  <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>&#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: 80%">Balance at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zl3Y5Y19Mgy5" style="width: 16%; text-align: right" title="Right of use assets, beginning balance">483,113</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">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_98C_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zQCW8HHk5T1d" 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_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20220101__20221231_zkrTKUxdLIP7" style="text-align: right" title="Right of use assets, beginning balance">217,267</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_988_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20220101__20221231_zq2GCT1M9pS2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation">(50,045</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">Balance at December 31, 2022</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--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20220101__20221231_zlYyfgjB8St2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Right of use assets, ending balance">167,222</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></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, 2020</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_zHQL6BaeDfzd" style="text-align: right" title="Lease liability, beginning balance">483,113</td><td style="text-align: left">&#160;</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_989_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_ziy6LuuHcDtg" 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: 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_c20210101__20211231_z54seAXcsdL1" 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: White">
    <td>Balance at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20220101__20221231_zPlddSdIbac9" style="text-align: right" title="Lease liability, beginning balance">217,267</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_984_ecustom--LeaseInterestExpense_pp0p0_c20220101__20221231_z6rENlYxm7l6" style="text-align: right" title="Lease interest expense">8,566</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_981_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20220101__20221231_zLtu4CyVNwYc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments">(58,611</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, 2022</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_c20220101__20221231_zGrPmdQqEocj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease liability, ending balance">167,222</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_980_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20221231_zbRRLRIuZAy5" style="text-align: right" title="Short-term portion">58,080</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_98C_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20221231_z9W7PIl57Rod" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion">109,142</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_984_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20221231_zpORKgkyLf1l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">167,222</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_zPZhutpoW4bl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zCKzwPUm0Rzi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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="font: 10pt Times New Roman, Times, Serif; display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: justify">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_498_20221231_zSKidC56c3Rl" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_z2KtkfZZ7Xz" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: justify">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">58,080</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_pp0p0_maLOLLPz1VZ_zQxB1PGW33V3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">59,520</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_pp0p0_maLOLLPz1VZ_zj4Yai8HEZw5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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">61,020</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_pp0p0_mtLOLLPz1VZ_zldNHSLP7ba8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">Total</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">178,620</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iNI_pp0p0_di_z590Af5dIow9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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">(11,398</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: White">
    <td style="text-align: justify; padding-bottom: 1.5pt">Lease liability, December 31, 2022</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">167,222</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Summary Of Right of use Asset And Lease Liability [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>43
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318393616">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock', window );">SCHEDULE OF ACCOUNTS RECEIVABLE</a></td>
<td class="text"><p id="xdx_896_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_z1gCTWL1Qtn5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zgNdG9PP2wr5" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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_20221231_zaE2ZofO2zGb" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20211231_zcXC0Rt4it1h" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_407_eus-gaap--AccountsReceivableGross_iI_pp0p0_maAANRNzCGO_maAANRNzPjC_z2kAp2mbcu19" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Accounts receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">9,739,150</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">7,403,308</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_iNI_pp0p0_di_msAANRNzCGO_msAANRNzPjC_zMGyNvd1haA7" 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">(289,293</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">(273,979</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--AccountsAndNotesReceivableNet_iTI_pp0p0_mtAANRNzPjC_zUgrRJlWSYHf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; 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">9,449,857</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">7,129,329</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>44
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318329840">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">SCHEDULE OF INVENTORY</a></td>
<td class="text"><p id="xdx_890_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zIoUdUc2KOJ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BC_zilafhaBzqWi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">SCHEDULE
OF INVENTORY</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_494_20221231_zpOxREueT87a" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20211231_zFULKKzCkJI7" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_404_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_maINzkLt_z3J51jildvJf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Completed goods</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">3,806,646</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">3,417,829</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_maINzkLt_zMIqCcIWksH2" style="vertical-align: bottom; background-color: White">
    <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">10,612,784</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">6,084,176</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pp0p0_mtINzkLt_zxS9n61hmpb9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total
    inventory</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">14,419,430</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">9,502,005</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>45
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318321536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, PLANT &amp; EQUIPMENT (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_zAIBDiMBAgve" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zWIKVDqGZY2d" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentGross_iI_zWCIGsgTOmhc" style="text-align: center">2022</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_487_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_zi7gF1xWQe59" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_481_eus-gaap--PropertyPlantAndEquipmentNet_iI_zRWFa8F88ICk" style="text-align: center">2022</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 id="xdx_41A_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zCWhLlFY4rll" 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 style="width: 14%; text-align: right">8,775,629</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,310,920</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,464,709</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_414_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zOkvXmjkLui9" style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">196,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,055</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">89,200</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zU6sAHYNlCQ" 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 style="text-align: right">43,432</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">42,663</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">769</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41D_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zieXsgtyzHy8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">133,280</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">112,782</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">20,498</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_410_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHYL0hDWPrLe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,634,063</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,891,736</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,742,327</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDGqI3u5ilgh" style="vertical-align: bottom; background-color: White">
    <td>Trailers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,857</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,592</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,265</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41F_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zQm1Nk7ArgH7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">27,907</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,493</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zTfQFn9mS3Yk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0843">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_412_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zTaf8Ekx3f3l" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">100,860</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">100,860</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0846">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41B_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zTExOTaW9TB5" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">384,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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0848">&#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 style="border-bottom: Black 1.5pt solid; text-align: right">384,027</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">&#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_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231_z308nsRf9g4l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost">18,399,675</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_98A_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20221231_z2lYeZlsD60h" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation">8,690,387</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_iI_c20221231_zPsFc33YTw33" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, plant and equipment, net, total">9,709,288</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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" id="xdx_485_eus-gaap--PropertyPlantAndEquipmentGross_iI_zcY6qmJKnMx2" style="text-align: center">2021</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_482_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_z0ABppyZ7Ce9" style="text-align: center">Accumulated</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentNet_iI_zY6M8BveDuj9" 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 id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zxTx0PfHaq23" 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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">1,840,119</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_411_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zoUtZRMclXb8" style="vertical-align: bottom; background-color: White">
    <td>Automobiles</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">196,255</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">71,258</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">124,997</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z4mbAZ1ZGCfa" 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 style="text-align: right">43,605</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">42,456</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,149</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_416_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_z3acbxnX0Ok3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Office equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">132,530</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,256</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">25,274</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_419_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHEretU9iWSg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Manufacturing equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,867,799</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,171,699</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,696,100</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_412_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zpeGtUeNODk6" style="vertical-align: bottom; background-color: White">
    <td>Trailers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">9,463</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,532</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,931</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_41A_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zBmIoeXCRva2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Boat</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">34,400</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">26,284</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,116</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_410_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zNZ25CQ3wzv6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">88,872</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0879">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zbUWCBEDB1dl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Technology</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">107,759</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0882">&#8212;</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zBrHzBx3d7Z4" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0884">&#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 style="border-bottom: Black 1.5pt solid; text-align: right">234,027</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">&#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--PropertyPlantAndEquipmentGross_iI_c20211231_z6Q3QgstkiHl" 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_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20211231_zMLf7YF5ImYk" 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_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_c20211231_zauqqEkkXNuh" 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>

<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>46
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318648368">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">SCHEDULE OF PATENTS</a></td>
<td class="text"><p id="xdx_895_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zzvrLwZgwhT3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span id="xdx_8B8_zxK14KCMvErj" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">SCHEDULE OF PATENTS</span><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; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2022</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: center"><span style="font: small-caps 10pt Times New Roman, Times, Serif">2022</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_988_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20221231_z0q6dzd0VTZg" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, cost">195,725</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_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_z0tX8HePGAp7" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated amortization">195,725</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_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20221231_zfYJXMACyTz2" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net">&#160;&#160;&#160;&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0917">-</span></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; 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; 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; 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; 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; 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_98B_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zkn2b2EVDoh8" 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_98B_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_zgaMj03jDWS1" 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_980_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zY1rnrZss2Hl" 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>

<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313796432">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock', window );">SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS</a></td>
<td class="text"><p id="xdx_891_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zbrYiNcCBuO8" style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_z5ulJQC246u1">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: 80%; padding-bottom: 1.5pt">Balance as of December 31, 2021 and 2022</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: 16%; text-align: right"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zKZkeDfDjVq3" title="Goodwill"><span id="xdx_90C_eus-gaap--Goodwill_iI_c20221231_zXv5UuxHigM6">2,534,275</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, 2021 and 2022</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_905_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_z5VzZGQZvtF9" title="Indefinite lived intangible assets, ending balance"><span id="xdx_901_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20221231_zMQhyANSjs33">770,000</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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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: 80%">Balance as of December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zaeM2pOh62j" style="width: 16%; text-align: right" title="Indefinite lived intangible assets, beginning balance">2,006,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_984_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zq40bQbXRVmd" 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, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zvqVdHmFjL03" style="text-align: right" title="Indefinite lived intangible assets, beginning balance">1,830,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_980_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zZv6U1ytREy2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization">(160,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, 2022</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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zVBEeoIhBZjh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Indefinite lived intangible assets, ending balance">1,670,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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE</a></td>
<td class="text"><p id="xdx_891_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zmXqIIEewY3d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zYUNT0na5iQh" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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: 80%; text-align: justify">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zIDiF5aFT98b" title="2023">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">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zTKg1CyNbkP4" style="text-align: right" title="2024">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">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z5A0FkAzpZAi" style="text-align: right" title="2025">160,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: justify">2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zoS6GWjrU7Sh" style="text-align: right" title="2026">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">2027</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--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z7ovJ3uJ5AOd" style="border-bottom: Black 1.5pt solid; text-align: right" title="2027">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_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>48
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318329840">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_FSI_ScheduleOfLongTermDepositsTableTextBlock', window );">SCHEDULE OF LONG TERM DEPOSITS</a></td>
<td class="text"><p id="xdx_895_ecustom--ScheduleOfLongTermDepositsTableTextBlock_zBsSm6lhatKa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BA_zKgl9BZFWcI3" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">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_49D_20221231_z9XYevAT68x5" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20211231_z7MuIDEwsiDa" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1.5pt">Long term deposits</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: 16%; text-align: right">8,540</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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right">8,540</td><td style="width: 1%; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Long Term Deposits [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>49
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313728352">
<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, 2022</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock', window );">SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED</a></td>
<td class="text"><p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zX6cbLFtnKDe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8BA_z3rK1lX9knB6">SCHEDULE
OF  FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED</span></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="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20220101__20221231_zSQUvD4v4mLl" style="text-align: right">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationConsiderationTransferred1_z5Yz0mGjSh1l" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left; padding-bottom: 1.5pt">Purchase consideration</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: 16%; text-align: right">506,659</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 id="xdx_40A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iE_zRKjVmaEjkla" 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 style="text-align: right">7,330</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iE_zqW2bjeKwDr9" 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 style="text-align: right">3,750,000</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iE_zKdVDrGcsYZc" 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 style="text-align: right">150,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 id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNE_di_zDCvuxzhBmRc" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Deferred tax liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(174,582</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_iE_zS4Dc7t7YCYg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Long term debt</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,849,500</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iE_zALzdPO8ys64" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">883,248</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_iE_zINPPWTb6B08" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Excess of assets acquired over consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">376,589</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_ecustom--InvestmentEliminatedUponConsolidation_zoTIrQXaD8jk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Less investment eliminated upon consolidation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(41,538</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_ecustom--GainOnAcquisitionOfSubsidiary_zlDiwZHC5B3b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Gain on acquisition of ENP Peru</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">335,051</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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--EnpPeruInvestmentsLlcMember_zIqugyKIQgnc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.7in"><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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8B5_zewEUz3CJgue">SCHEDULE OF EQUITY METHOD INVESTMENT</span></span></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: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_902_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zB3CB8AKKjCi" title="Balance, Beginning">3,822</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_983_ecustom--EquityMethodInvestmentReturnOfEquity_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zNmJPMjn6ABe" 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: 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_982_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zA4Td4LWwNal" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain 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: White">
    <td>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--EquityMethodInvestments_iS_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z6zwz0rtTc4k" style="text-align: right" title="Balance, Beginning">22,642</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_98F_ecustom--EquityMethodInvestmentReturnOfEquity_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zsYQzKt3k7B6" style="text-align: right" title="Return of equity">(8,750</td><td style="text-align: left">)</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_984_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z5tunoBA2Wwe" style="text-align: right" title="Gain in equity method investment">27,646</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">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_988_ecustom--InvestmentEliminatedUponConsolidation_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zQYO2nCQYykl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation">(41,538</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, June 30 and December 31, 2022</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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zbgFRVVu3nVb" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"><span style="-sec-ix-hidden: xdx2ixbrl1028">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_89B_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zlizCmMgIrk5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information related to the equity accounted investment is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span style="display: none"><span id="xdx_8BD_z3IeGPjwTig8">SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT</span></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: 90%; margin-right: auto">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20220101__20220630__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zTALQTJC7sz7" style="border-bottom: Black 1.5pt solid; text-align: center">Six months ended <br/> June 30, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z9MfWvtc0Zf6" style="border-bottom: Black 1.5pt solid; text-align: center">Year ended <br/> December 31, 2021</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 id="xdx_400_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zdIpjC1Jux9c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">162,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">322,079</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"/></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_404_ecustom--RealizedInvestmentGainsLossesNet_zp4rJOPGPP5j" 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">&#160;</td><td style="text-align: right">55,292</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">45,285</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsTextBlock', window );">SCHEDULE OF EQUITY METHOD INVESTMENT</a></td>
<td class="text"><p id="xdx_895_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zCmzUSq8q0E6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zJi7XAK6QsRg" 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: 85%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zLrCbVhMh1j5" title="Balance, Beginning">3,572,345</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">Gain in equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z06NYLPrQHmg" style="text-align: right" title="Gain (loss) 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_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zMN3D1pDHRY" 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>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--EquityMethodInvestments_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8ojLyzsVACi" style="text-align: right" title="Balance, Beginning">3,701,368</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_980_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zP9MvKl3IF6e" style="text-align: right" title="Gain (loss) in equity method investment">307,527</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_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqq628UNx0wc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity">(250,000</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, 2022</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_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrSxR8hLzQFd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Balance, Ending">3,758,895</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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--FloridaBasedLLCMember_zJEodwGYEjDg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Summarized
profit and loss information related to the equity accounted investment is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zKKN1pJiKd59" 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" id="xdx_497_20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zYKqfT1o8Oki" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zpzbmcsHYlo7" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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 id="xdx_402_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zkrWkJ3kpxte" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Net sales</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">18,103,070</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">11,543,277</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--RealizedInvestmentGainsLosses_zmisjQAmqTLi" 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 style="text-align: right">4,204,311</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,517,387</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--RealizedInvestmentGainsLossesNet_z3TOwU1Z5445" 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 style="text-align: right">615,055</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">908,045</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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--LygosIncMember_zZZl4WPs7Yhd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_zl6Amg4fNlp8" 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: 85%; margin-right: auto">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zPqcyCUb8Fne" title="Balance, Beginning">500,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: left; padding-bottom: 1.5pt">Additional investment</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"><span id="xdx_908_ecustom--AdditionalPaymentInvestment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zgienAi9gmx9" title="Additional payment investment">500,000</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="padding-bottom: 1.5pt">Balance, December 31, 2021 and December 31, 2022</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_90D_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_z4FCW8waCDg1" title="Balance, Ending">1,000,000</span></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_EquityMethodInvestmentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.</p></div>
<a href="javascript:void(0);" onclick="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 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1486-128463<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 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>50
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264311945072">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_FSI_ScheduleOfLoanCovenantsTableTextBlock', window );">SCHEDULE OF LOAN COVENANTS</a></td>
<td class="text"><p id="xdx_894_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zHvC8QzbWMe2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_zGAiJVg2lanh" 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_49F_20220101__20221231_ze0EakRylO8f" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zolYBd71smf7" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iS_zdqP51N4peD5" 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">2,366,598</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">3,847,638</td><td style="width: 1%; 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_409_eus-gaap--LongTermDebt_iS_zd79v3S0ljHf" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Balance, beginning of period</span></td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,366,598</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">3,847,638</td><td style="text-align: left">&#160;</td></tr>
<tr id="xdx_405_eus-gaap--ProceedsFromBankDebt_za4GshHnUdQ2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Plus: Proceeds from loans</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,230,798</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1296">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--ProceedsFromLoanAcquiredFromAcquisition_zDplANtj8P94" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Plus: Loan acquired with acquisition of ENP Peru</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,849,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1299">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--RepaymentsOfBankDebt_iN_di_zDtkTrNJwSL4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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"><span style="-sec-ix-hidden: xdx2ixbrl1301">-</span></td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_409_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_di_zkAX6MoqQBlk" style="vertical-align: bottom; background-color: White">
    <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">(2,292,819</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">(943,080</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--LongTermDebt_iE_zrYp6fU5hSGb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance, end of period</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">6,154,077</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">2,366,598</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock', window );">SCHEDULE OF OUTSTANDING BALANCE LOAN</a></td>
<td class="text"><p id="xdx_892_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zPdLB1tFg7X1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zXe9nTd2vvvb" style="display: none">SCHEDULE
OF OUTSTANDING BALANCE LOAN</span></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></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 at December 31,</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20221231_zpDDkwj5qB3h" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_490_20211231_zIbuCvsdwZgh" style="border-bottom: Black 1.5pt solid; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z51OvFVDsBJ" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">a) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1312">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1313">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zOp9DOIG4vl5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">b) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1315">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1316">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zAF6NKBZo486" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">c) Long term debt &#8211; PPP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1318">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1319">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zANa440uuUp5" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left">d) Long term debt &#8211; Midland States Bank</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1321">-</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: 16%; text-align: right">1,554,044</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zcSpDytAmH0c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">e) Long term debt &#8211; Midland States Bank</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1324">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">381,674</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zRATjAqHNIOf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">f) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">415,430</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">430,880</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustTwoMember_zbSIOlIqDCQ1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">g) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,632,672</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1331">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustThreeMember_zTIJQNJq55Gh" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">h) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,813,015</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1334">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFourMember_zWqqgO20BRFg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">i) Long term debt &#8211; Stock Yards Bank &amp; Trust</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">256,162</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1337">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFiveMember_z7GugtLGDPxk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">j) 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 style="border-bottom: Black 1.5pt solid; text-align: right">1,036,798</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"><span style="-sec-ix-hidden: xdx2ixbrl1340">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--LongTermDebt_iI_zzlCYBCc0itk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Total</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,154,077</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,366,598</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LongTermDebtCurrent_iNI_di_zbdjpnjAF9pi" style="vertical-align: bottom; background-color: White">
    <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 style="border-bottom: Black 1.5pt solid; text-align: right">(717,612</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">(793,574</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebtNoncurrent_iI_zcrrS4XZ0s6k" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Long term debt</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">5,436,465</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,573,024</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/></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_ScheduleOfLoanCovenantsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Loan Covenants [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ScheduleOfDebtInstrumentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314686656">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT)</a></td>
<td class="text"><p id="xdx_895_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z3wOe1Zl9r8e" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zpWjriyJZ2g9" 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_49B_20220101__20221231_zOrbSzqvbztd" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20210101__20211231_zVlMaxgLp4d4" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zHWhd8rmwiVf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Current tax, federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">1,017,059</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,309,503</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_maCITEBzvlG_zLdopQG8Faak" 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">460,098</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_407_eus-gaap--CurrentForeignTaxExpenseBenefit_maCITEBzvlG_z3eKKdARv68i" 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">216,082</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">91,285</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--CurrentTax_pp0p0_mtCITEBzvlG_maCITEBzPIr_zXL3EDO1lREg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Current tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,693,239</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_40D_ecustom--IncomeTaxRecovery_pp0p0_maCITEBzPIr_zSDSptipEWG5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-align: left">Income tax 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">(1,476,088</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"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--CurrentIncomeTaxExpenseBenefits_iT_mtCITEBzPIr_maITEBz5Oq_z7ujDL1kONY5" 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">217,151</td><td style="text-align: left">&#160;</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></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_zUPjLo5tZ1y2" 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">(49,088</td><td style="text-align: left">)</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></tr>
  <tr id="xdx_405_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_maDITEBzP63_zAWsGCb8ugd4" 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">(22,207</td><td style="text-align: left">)</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></tr>
  <tr id="xdx_40C_eus-gaap--DeferredForeignIncomeTaxExpenseBenefit_maDITEBzP63_z6KAAmxQH5I9" 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">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1379">-</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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1380">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz5Oq_zCC3522t8fqa" 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">(71,295</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">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz5Oq_z3yQwZFDvhLj" 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">145,856</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">2,356,499</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_zPQx4ry3mHIh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zkV0Z8yt88H3" style="display: none">SCHEDULE
OF RECONCILIATION OF INCOME TAXES</span>&#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" id="xdx_499_20220101__20221231_zJbWP80Qm3u8" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20210101__20211231_zXK2frTkD0J5" style="border-bottom: Black 1.5pt solid; text-align: center">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_zu2ACpSeLdd2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Income before tax</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">7,859,085</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">6,650,756</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_zHOsrbibMjCb" 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_z7IsTOAt4qDc" 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,397,021</td><td style="text-align: left">&#160;</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></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">(243,167</td><td style="text-align: left">)</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></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">(2,004,041</td><td style="text-align: left">)</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></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"><span style="-sec-ix-hidden: xdx2ixbrl1405">-</span></td><td style="text-align: left">&#160;</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></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">(226,611</td><td style="text-align: left">)</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></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">222,654</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">(171,288</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">145,856</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">2,356,499</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_401_eus-gaap--CurrentIncomeTaxExpenseBenefit_z8gaW7vaD2ea" 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">217,151</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_406_eus-gaap--DeferredIncomeTaxExpenseBenefit_zZYhwLVYogt7" 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">(71,295</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">363,317</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_zdwexhlosr83" 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">145,856</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">2,356,499</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_zMB7472eQDAg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021 are comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zzyVvVHj7Kvj" style="display: none">SCHEDULE
OF DEFERRED TAX ASSETS (LIABILITIES)</span>&#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">2022</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">2021</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: 60%; 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_98F_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjBkFtcjWMu8" style="width: 16%; text-align: right" title="Non capital loss carryforwards">891,954</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--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCK9kRgBTm6g" style="width: 16%; text-align: right" title="Non capital loss carryforwards">1,443,371</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_98C_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zIVYodqoJ8T8" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1436">-</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--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z82Sh7XhYAS3" style="text-align: right" title="Intangible assets">19,849</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; text-align: left; padding-left: 10pt">Property, equipment and leaseholds</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--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zheTqIjX1U09" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds">47,279</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_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zR14AboH1Wa3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds">587,408</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 id="xdx_983_eus-gaap--DeferredTaxAssetsGross_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zVc36RcNa9D7" style="text-align: right" title="Deferred tax assets gross">939,230</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGross_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjaYq5VYZAwe" style="text-align: right" title="Deferred tax assets gross">2,050,628</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">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_98F_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zO9F5MXypChe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance">(939,230</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_982_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zopsoBfKYZZ6" 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></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</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--DeferredTaxAssetsNet_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zxN5S0uydLch" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1452">-</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_98A_eus-gaap--DeferredTaxAssetsNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zPk79oavyO92" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"><span style="-sec-ix-hidden: xdx2ixbrl1454">-</span></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 style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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: 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">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">2022</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">2021</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-left: 10pt">Net operating loss carryforwards</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zx7quhVoLHwh" style="text-align: right" title="Net operating loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1456">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zW8f6rDgp2A5" style="text-align: right" title="Non capital loss carryforwards"><span style="-sec-ix-hidden: xdx2ixbrl1458">-</span></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">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z9lsNWqmf2Q4" style="text-align: right" title="Intangible assets">(6,070</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8SXjfhiTNBc" style="text-align: right" title="Intangible assets"><span style="-sec-ix-hidden: xdx2ixbrl1462">-</span></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">Investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zzZlTpuEXbd" style="text-align: right" title="Investments">(7,676</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zf8Mx9acdJHc" style="text-align: right" title="Investments">(241,880</td><td style="text-align: left">)</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--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0bPn1tEEsj" style="text-align: right" title="Property, equipment and leaseholds">(486,713</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zIyG7HRHkTti" style="text-align: right" title="Property, equipment and leaseholds">(68,282</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_98B_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zNgwkBj4uGXk" style="text-align: right" title="Property, equipment and leaseholds">274,289</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z17Hp0ue0ro7" style="text-align: right" title="Property, equipment and leaseholds">12,697</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">Financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--DeferredTaxAssetsDerivativeInstruments_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zOYiX6FunMEh" style="text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1476">-</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_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zBBwqFKJj641" style="text-align: right" title="Financial instruments"><span style="-sec-ix-hidden: xdx2ixbrl1478">-</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-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_980_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zfX9Mj4pIYq2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1480">-</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_98A_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zt73E9P3Zomk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"><span style="-sec-ix-hidden: xdx2ixbrl1482">-</span></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; 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_980_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zmtJbt7yFYx9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)">(226,170</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_98A_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_ziqaVAZKYX83" 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></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="Show.showAR( this, 'defref_FSI_ScheduleOfNonOperatingLossCarryforwardsTableTextBlock', window );">SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS</a></td>
<td class="text"><p id="xdx_895_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zvWxHL3QZ2gi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zDB4pPETi302" 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>&#160;</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: 52%; text-align: right">2030</td><td style="width: 0%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zreS5k1wcIRa" style="width: 46%; text-align: right" title="Total">645,781</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneYearMember_zU6OVSGS3Pr7" style="text-align: right" title="Total">919,683</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">2032</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTwoYearMember_zy3xV3FApd38" style="text-align: right" title="Total">601,379</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_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenYearMember_zlpxDUt1lULl" style="text-align: right" title="Total">1,652,709</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">2039</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineYearMember_zAtu4w90EDpc" style="text-align: right" title="Total">46,917</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">2040</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--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandFourtyYearMember_zU2QzuyHGOLa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">11,591</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_98E_eus-gaap--OperatingLossCarryforwards_iI_c20221231_zOJw2uzcgMn2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">3,878,060</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Non-operating Loss Carryforwards [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>52
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319443664">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_z6smLswLQgE4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_zDGtTpiF1VIi" 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20220101__20221231_zAIa64gXVbui" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_ztb3sm9hHuTk" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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: 60%; 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: 16%; text-align: right">7,021,604</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">3,449,162</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_zkwImRlX5SG3" 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,379,316</td><td style="text-align: left">&#160;</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></tr>
  <tr id="xdx_400_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zAGSN3yKH4m" 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,466,415</td><td style="text-align: left">&#160;</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></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_409_eus-gaap--EarningsPerShareBasic_zq5nc3uue8Pa" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.57</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.28</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--EarningsPerShareDiluted_zUNarqe6c643" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">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.56</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.28</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock', window );">SCHEDULE OF ANTI-DILUTIVE OPTIONS</a></td>
<td class="text"><p id="xdx_890_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_z7T04V8PGijb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_zB0nYfc3ecl1" 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: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_498_20220101__20221231_z8nKvERc6Uig" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20210101__20211231_zFMQI4Nhnd81" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1.5pt">Anti-dilutive options</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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right">1,304,000</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">&#160;</td><td style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right">21,000</td><td style="width: 1%; 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>53
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319432608">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_zxwPch9uAy92" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_zmTrlLWlgpve" 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, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_zxnOtr8Fn5xa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance">749,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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zspUpY3EggRf" title="Exercise price per share, Beginning Balance">0.75</span> &#8211; <span id="xdx_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z06EZ0bv7Gac" title="Exercise price per share, Beginning Balance">4.13</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_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20210101__20211231_zPbqzuSazOP9" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance">2.42</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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_z0JtIv2ZvtT1" 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 style="text-align: right"><span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20210101__20211231_pdd" title="Exercise price per share, Granted">3.61</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zrSt66uLRGk2" 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_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Cancelled or expired">1.42</span> &#8211; <span id="xdx_90A_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zh6BlQjD887d" 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 style="text-align: right"><span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zeFDpFUZCxok" title="Weighted average exercise price, Cancelled or expired">2.30</span></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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_ziqYSKiISl3h" 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_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Exercised">0.75</span> &#8211; <span id="xdx_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_pdd" 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_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">&#160;&#160;&#160;&#160;&#160;&#160;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>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20220101__20221231_zXoB3eETXFcb" style="text-align: right" title="Number of shares, Beginning Balance">789,500</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_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z2CPNhgPDvFf" title="Exercise price per share, Beginning Balance">1.42</span> &#8211; <span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zAmMy8PXbfih" 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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20220101__20221231_zivQGeZcGp8h" style="text-align: right" title="Weighted average exercise price, Ending Balance">2.78</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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231_zyjNUl12qMsd" style="text-align: right" title="Number of shares, Granted">981,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_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zyilmJUT4Mh1" title="Exercise price per share, Granted">3.55</span> &#8211; <span id="xdx_903_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_z98lS7YJsExd" title="Exercise price per share, Granted">3.61</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20220101__20221231_z2i1Jnf6MrL2" style="text-align: right" title="Weighted average exercise price, Granted">3.55</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_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20220101__20221231_zejewlsH9Hr8" style="text-align: right" title="Number of shares, Cancelled or expired">(13,486</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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z7DzanglMKh8" title="Exercise price per share,cancelled">1.70</span> &#8211; <span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zCEI6SlljaLc" title="Exercise price per share,cancelled">3.61</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zLIKtxrGifU2" style="text-align: right" title="Weighted average exercise price, Cancelled or expired">2.32</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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20220101__20221231_zv8bsJSM4Hul" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised">(71,014</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_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_ztJFxzAjkyvd" title="Exercise price per share, Exercised">1.42</span> &#8211; <span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zUckAKWhdlZg" title="Exercise price per share, Exercised">2.44</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--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20220101__20221231_zauAjwQKkhok" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised">1.98</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, 2022</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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20220101__20221231_zre1ahLqdHq7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance">1,686,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">$</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_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zV4cec7jDHth" title="Exercise price per share, Ending Balance">1.70</span> &#8211; <span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zf65g4SxRv9a" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_c20220101__20221231_zCsjq6OTksr9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance">3.26</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, 2022</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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20220101__20221231_ztFK1xRSx3Ea" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance">680,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">$</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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z8R8xLcYrbak" title="Exercise price per share Exercisable, Ending Balance">1.70</span> &#8211; <span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zoY0f2cYHXy7" 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_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_c20220101__20221231_zbuOYWAvdxqi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance">2.92</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS</a></td>
<td class="text"><p id="xdx_89B_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_z7fpM6eQ7YVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_z4M53mEL2Ge3" 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; border-collapse: collapse; width: 90%; margin-left: 0.5in">
  <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">2022</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">2021</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; 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: 16%; text-align: right"><span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20220101__20221231_zkVa0On95SZi" 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: 16%; text-align: right"><span id="xdx_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_zhr5t9Jav4Th" 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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zy7dDJfkvWNh" title="Interest rate">1.76</span> &#8211; <span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_znpoj4AtCcF7" title="Interest rate">3.64</span></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_zBhyq8BPRq88" title="Interest rate">1.23</span></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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zMwDBd9DmNTl" title="Volatility">66.01</span>
- <span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zzPIwQBGYV2e" title="Volatility">69.66</span></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_z8bHMwqZa0x4" title="Volatility">63.28</span></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 style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zDWg1O60ipi4" title="Weighted average fair value of options granted">1.46</span> &#8211; <span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zw9X1pKbfXJh" title="Weighted average fair value of options granted">1.65</span></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zecYNL0YIWLc" title="Weighted average fair value of options granted">1.23</span></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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>54
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318717440">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_FSI_ScheduleOfDistributionsTableTextBlock', window );">SCHEDULE OF DISTRIBUTIONS</a></td>
<td class="text"><p id="xdx_896_ecustom--ScheduleOfDistributionsTableTextBlock_z37h3PNMIgF8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zpuE50pys3sk" style="display: none">SCHEDULE
OF DISTRIBUTIONS</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: 0.5in; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance, December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span id="xdx_900_eus-gaap--MinorityInterest_iS_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zefn4r6KjVmk" title="Distribution to noncontrolling interests, Beginning balance">2,561,751</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_980_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zY5i7lcMQxEf" style="text-align: right" title="Distribution">(804,003</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_981_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zzBl4gGkY16f" 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: White">
    <td>Balance, December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--MinorityInterest_iS_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zQQ1mv3gv25k" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance">2,602,843</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_988_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zRntTrdpcRxj" style="text-align: right" title="Distribution">(689,434</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_98E_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_z7Ev46Utgera" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income">691,625</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, 2022</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--MinorityInterest_iE_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zCwbSJ8pdeC1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance">2,605,034</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Distributions [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>55
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319640944">
<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, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock', window );">SCHEDULE OF REPORTABLE SEGMENTS</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z7Z8btuCkj9k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year
ended December 31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zMRQLNxo7j3a" 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="display: none; vertical-align: bottom">
    <td style="text-align: justify">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20220101__20221231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zKvja07INZr4" 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" id="xdx_49D_20220101__20221231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zeeSKFpH48hl" 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" id="xdx_49D_20220101__20221231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zea4rkm3Wkaf" 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 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 id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zC17GTw1IMY" 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 style="width: 14%; text-align: right">528,462</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">45,312,007</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">45,840,469</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--InterestExpense_zIdrvcu0mnh" 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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1746">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">292,949</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">292,949</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DepreciationNonproduction_zK6Ybe8yMmNh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">33,876</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,243,555</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,277,431</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--IncomeTaxExpenseBenefit_zJphmKrXdUw" 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 style="text-align: right">18,898</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">126,958</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">145,856</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--NetIncomeLoss_zreNNY1vMem8" 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 style="text-align: right">(334,525</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,047,754</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,713,229</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--Segmentassets_zthVwUC0mf54" 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 style="text-align: right">2,810,091</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">48,777,101</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">51,587,192</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zD2BpGRFH8xj" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1766">-</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 style="border-bottom: Black 1.5pt solid; text-align: right">1,981,307</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,981,307</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; 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; 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; 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: 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" id="xdx_49F_20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zCTooJ35VbO2" 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" id="xdx_49D_20210101__20211231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zgrp8wqB2Rpc" 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" id="xdx_491_20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zX69hz1JK1y7" 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 id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zk0IIfgIumab" 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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">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 style="width: 14%; text-align: right">34,416,335</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InterestExpense_zUu6FD8UuKPd" 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 style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1774">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">199,930</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">199,930</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DepreciationNonproduction_zH0EPE47hbhd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Depreciation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">40,247</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">925,688</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">965,935</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_zy6QWXiORxif" 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 style="text-align: right">24,384</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,332,115</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,356,499</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--NetIncomeLoss_zWCfIrszfB58" 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 style="text-align: right">(368,994</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,663,251</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,294,257</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--Segmentassets_zowGpOOAzbdk" 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 style="text-align: right">1,929,537</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">37,621,733</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">39,551,270</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zG3wEH909EC2" 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 style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1794">-</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 style="border-bottom: Black 1.5pt solid; text-align: right">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 style="border-bottom: Black 1.5pt solid; text-align: right">782,219</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_zvF7m47amyM2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><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"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B6_znzandgoWMmi" 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" id="xdx_49B_20220101__20221231_zTd2rk0hK9de" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_498_20210101__20211231_zzNozA9Ek9oa" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_40E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__country--CA_zPqskhkNCZr7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">552,123</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">525,900</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zA91bsqjuLW8" 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 style="border-bottom: Black 1.5pt solid; text-align: right">45,288,346</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">33,890,435</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zU0c1GmPLfMi" 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 style="border-bottom: Black 1.5pt solid; text-align: right">45,840,469</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">34,416,335</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock', window );">SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE</a></td>
<td class="text"><p id="xdx_894_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zSM0dntXikqb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_z7JD6HCLxJsl" style="display: none">SCHEDULE
OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE</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" id="xdx_49C_20221231_z2j1FRu4OSO" style="border-bottom: Black 1.5pt solid; text-align: center">2022</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20211231_zkepl3va18A8" style="border-bottom: Black 1.5pt solid; text-align: center">2021</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_409_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--CA_zIVj4htYxw6f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Canada</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">150,890</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">191,752</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--US_zocDXUOKG2pb" 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 style="border-bottom: Black 1.5pt solid; text-align: right">14,699,896</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">10,105,202</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--NoncurrentAssets_iI_zf83vDN2usac" 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 style="border-bottom: Black 1.5pt solid; text-align: right">14,850,786</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">10,296,954</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>56
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313847952">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Purchase price</a></td>
<td class="nump">$ 506,659<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="Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpInvestmentsLlcAndEnpMendotaMember', window );">ENP Investments, LLC and ENP Mendota, 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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_srt_OwnershipAxis=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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">65.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpPeruMember', window );">Enp Peru [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_IncreaseDecreaseInSharePercentage', window );">Increase decrease in share percentage</a></td>
<td class="nump">91.67%<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="Show.showAR( this, 'defref_FSI_RemainingInvestmentOwnedPercentage', window );">Remaining investment owned percentage</a></td>
<td class="nump">8.33%<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="Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByParent', window );">Minority interest ownership percentage by parent</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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpPeruMember', window );">Enp Peru [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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest', window );">Subsidiary company ownership interest rate</a></td>
<td class="nump">50.00%<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_IncreaseDecreaseInSharePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase decrease in share percentage.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_IncreaseDecreaseInSharePercentage</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_RemainingInvestmentOwnedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remaining investment owned percentage.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_RemainingInvestmentOwnedPercentage</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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126966197&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 https://asc.fasb.org/extlink&amp;oid=126975305&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 https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_MinorityInterestOwnershipPercentageByParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EnpInvestmentsLlcAndEnpMendotaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_EnpInvestmentsLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_srt_OwnershipAxis=FSI_EnpPeruMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_EnpPeruMember</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>57
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312554512">
<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, 2022</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_BoatMember', window );">Boat [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="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="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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Building and Building 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="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="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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_TrailerMember', window );">Trailer [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="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="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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_CustomerRelationshipsMember', 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="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="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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=FSI_SoftwareMember', window );">Software [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="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="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Depreciation method used and annual rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_BuildingAndBuildingImprovementsMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_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_PropertyPlantAndEquipmentByTypeAxis=FSI_SoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_SoftwareMember</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>58
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313791376">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Deposits', window );">Deposit</a></td>
<td class="nump">$ 700,000<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt interest rate</a></td>
<td class="nump">3.00%<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="Show.showAR( this, 'defref_us-gaap_InterestPayableCurrentAndNoncurrent', window );">Accured interest</a></td>
<td class="nump">$ 150<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="Show.showAR( this, 'defref_FSI_OtherTermDeposit', window );">Other term deposit</a></td>
<td class="nump">300,000<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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">45,840,469<span></span>
</td>
<td class="nump">$ 34,416,335<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="nump">$ 31,971,596<span></span>
</td>
<td class="nump">23,019,824<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_InvestmentMember', window );">Investment [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentDescriptionOfPrincipalActivities', window );">Equity method investment, description</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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 27,775,617<span></span>
</td>
<td class="nump">16,917,947<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts receivable, after allowance for credit loss</a></td>
<td class="nump">$ 6,124,424<span></span>
</td>
<td class="nump">$ 4,940,995<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="Show.showAR( this, 'defref_FSI_ConcentrationRiskThresholdPercentage', window );">Accounts receivable, after allowance for credit loss, percentage</a></td>
<td class="nump">61.00%<span></span>
</td>
<td class="nump">49.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="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="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="Show.showAR( this, 'defref_FSI_ConcentrationRiskThresholdPercentage', window );">Accounts receivable, after allowance for credit loss, percentage</a></td>
<td class="nump">65.00%<span></span>
</td>
<td class="nump">69.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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 433,015<span></span>
</td>
<td class="nump">$ 465,493<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="nump">$ 913,890<span></span>
</td>
<td class="nump">$ 1,058,674<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Concentration Risk Threshold Percentage.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_FSI_OtherTermDeposit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_OtherTermDeposit</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>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_AccountsReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126942793&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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Deposits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate of all deposit liabilities held by the entity, including foreign and domestic, interest and noninterest bearing; may include demand deposits, saving deposits, Negotiable Order of Withdrawal (NOW) and time deposits among others.</p></div>
<a href="javascript:void(0);" onclick="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.12)<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Deposits</td>
</tr>
<tr>
<td style="padding-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_EquityMethodInvestmentDescriptionOfPrincipalActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestPayableCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest payable on debt, including, but not limited to, trade payables.</p></div>
<a href="javascript:void(0);" onclick="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.15(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.15(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPayableCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-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_ProductInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_InvestmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_InvestmentMember</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_ConcentrationRiskByTypeAxis=FSI_ThreePrimaryCustomersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>59
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312534576">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of use assets, beginning 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense', window );">Depreciation</a></td>
<td class="num">(50,045)<span></span>
</td>
<td class="num">(265,846)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right of use assets, ending balance</a></td>
<td class="nump">167,222<span></span>
</td>
<td class="nump">217,267<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Lease liability, beginning balance</a></td>
<td class="nump">217,267<span></span>
</td>
<td class="nump">483,113<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_LeaseInterestExpense', window );">Lease interest expense</a></td>
<td class="nump">8,566<span></span>
</td>
<td class="nump">22,057<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Payments</a></td>
<td class="num">(58,611)<span></span>
</td>
<td class="num">(287,903)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Lease liability, ending balance</a></td>
<td class="nump">167,222<span></span>
</td>
<td class="nump">217,267<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Short-term portion</a></td>
<td class="nump">58,080<span></span>
</td>
<td class="nump">77,715<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Long-term portion</a></td>
<td class="nump">109,142<span></span>
</td>
<td class="nump">139,552<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total</a></td>
<td class="nump">$ 167,222<span></span>
</td>
<td class="nump">$ 217,267<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lease interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>60
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264309378864">
<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, 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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 58,080<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2024</a></td>
<td class="nump">59,520<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2025</a></td>
<td class="nump">61,020<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total</a></td>
<td class="nump">178,620<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Impact of discounting</a></td>
<td class="num">(11,398)<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="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Lease liability, December 31, 2022</a></td>
<td class="nump">$ 167,222<span></span>
</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>61
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318553984">
<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, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918673-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>62
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319471184">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableGross', window );">Accounts receivable</a></td>
<td class="nump">$ 9,739,150<span></span>
</td>
<td class="nump">$ 7,403,308<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables', window );">Allowances for doubtful accounts</a></td>
<td class="num">(289,293)<span></span>
</td>
<td class="num">(273,979)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsAndNotesReceivableNet', window );">Total accounts receivable</a></td>
<td class="nump">$ 9,449,857<span></span>
</td>
<td class="nump">$ 7,129,329<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>63
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264311939840">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF INVENTORY (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Completed goods</a></td>
<td class="nump">$ 3,806,646<span></span>
</td>
<td class="nump">$ 3,417,829<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsAndSupplies', window );">Raw materials and supplies</a></td>
<td class="nump">10,612,784<span></span>
</td>
<td class="nump">6,084,176<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventory</a></td>
<td class="nump">$ 14,419,430<span></span>
</td>
<td class="nump">$ 9,502,005<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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(6))<br> -URI https://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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264316237600">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">$ 18,399,675<span></span>
</td>
<td class="nump">$ 12,538,418<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">8,690,387<span></span>
</td>
<td class="nump">7,606,705<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">9,709,288<span></span>
</td>
<td class="nump">4,931,713<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Building and Building 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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">8,775,629<span></span>
</td>
<td class="nump">4,823,708<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">3,310,920<span></span>
</td>
<td class="nump">2,983,589<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">5,464,709<span></span>
</td>
<td class="nump">1,840,119<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">196,255<span></span>
</td>
<td class="nump">196,255<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">107,055<span></span>
</td>
<td class="nump">71,258<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">89,200<span></span>
</td>
<td class="nump">124,997<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">43,432<span></span>
</td>
<td class="nump">43,605<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">42,663<span></span>
</td>
<td class="nump">42,456<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">769<span></span>
</td>
<td class="nump">1,149<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">133,280<span></span>
</td>
<td class="nump">132,530<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">112,782<span></span>
</td>
<td class="nump">107,256<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">20,498<span></span>
</td>
<td class="nump">25,274<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">8,634,063<span></span>
</td>
<td class="nump">6,867,799<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">4,891,736<span></span>
</td>
<td class="nump">4,171,699<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">3,742,327<span></span>
</td>
<td class="nump">2,696,100<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">8,857<span></span>
</td>
<td class="nump">9,463<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">7,592<span></span>
</td>
<td class="nump">7,532<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">1,265<span></span>
</td>
<td class="nump">1,931<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">27,907<span></span>
</td>
<td class="nump">26,284<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">6,493<span></span>
</td>
<td class="nump">8,116<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">100,860<span></span>
</td>
<td class="nump">107,759<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">100,860<span></span>
</td>
<td class="nump">107,759<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">384,027<span></span>
</td>
<td class="nump">234,027<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net, total</a></td>
<td class="nump">$ 384,027<span></span>
</td>
<td class="nump">$ 234,027<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<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(14))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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(13))<br> -URI https://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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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> -URI https://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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&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 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_BuildingAndBuildingImprovementsMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_OfficeEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>65
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312672032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>PROPERTY, PLANT &amp; EQUIPMENT (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, 2022 </div>
<div>USD ($)</div>
</th>
<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, 2021 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">$ 1,103,732<span></span>
</td>
<td class="nump">$ 773,497<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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="nump">$ 18,399,675<span></span>
</td>
<td class="nump">12,538,418<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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfMachineryAndEquipment', window );">Proceed for disposal</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">263,380<span></span>
</td>
<td class="nump">$ 333,899<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">219,318<span></span>
</td>
<td class="text">&#160;<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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets1', window );">Recognized gains</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
</table>
<div style="display: none;">
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area of land held.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GainLossOnDispositionOfAssets1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets1</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from sale of machinery and equipment.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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(13))<br> -URI https://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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>66
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264316125120">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedPatentsGross', window );">Patents, cost</a></td>
<td class="nump">$ 195,725<span></span>
</td>
<td class="nump">$ 208,079<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="nump">195,725<span></span>
</td>
<td class="nump">194,380<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Patents, net</a></td>
<td class="text"> <span></span>
</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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<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(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>67
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312118400">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Indefinite lived intangible assets, ending balance</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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Indefinite lived intangible assets, beginning balance</a></td>
<td class="nump">770,000<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="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Indefinite lived intangible assets, ending balance</a></td>
<td class="nump">770,000<span></span>
</td>
<td class="nump">770,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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Indefinite lived intangible assets, ending balance</a></td>
<td class="nump">1,670,000<span></span>
</td>
<td class="nump">1,830,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Indefinite lived intangible assets, beginning balance</a></td>
<td class="nump">1,830,000<span></span>
</td>
<td class="nump">2,006,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="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization</a></td>
<td class="num">(160,000)<span></span>
</td>
<td class="num">(176,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill', window );">Indefinite lived intangible assets, ending balance</a></td>
<td class="nump">$ 1,670,000<span></span>
</td>
<td class="nump">$ 1,830,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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: 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(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>68
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312606144">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details) - Finite-Lived Intangible Assets [Member]<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 160,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2024</a></td>
<td class="nump">160,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2025</a></td>
<td class="nump">160,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2026</a></td>
<td class="nump">160,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2027</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>69
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314520336">
<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, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </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="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>
<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="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>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember', window );">Patents [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="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>
<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="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangible assets</a></td>
<td class="nump">$ 13,699<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>
</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase in currency conversion.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314657296">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>71
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314746928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</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="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>
<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Purchase consideration</a></td>
<td class="nump">$ 506,659<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="nump">7,330<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings', window );">Building</a></td>
<td class="nump">3,750,000<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand', window );">Land</a></td>
<td class="nump">150,000<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liability</a></td>
<td class="num">(174,582)<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="Show.showAR( this, 'defref_FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt', window );">Long term debt</a></td>
<td class="num">(2,849,500)<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="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets', window );">Total identifiable net assets:</a></td>
<td class="nump">883,248<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="Show.showAR( this, 'defref_FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice', window );">Excess of assets acquired over consideration</a></td>
<td class="nump">376,589<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="Show.showAR( this, 'defref_FSI_InvestmentEliminatedUponConsolidation', window );">Less investment eliminated upon consolidation</a></td>
<td class="num">(41,538)<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="Show.showAR( this, 'defref_FSI_GainOnAcquisitionOfSubsidiary', window );">Gain on acquisition of ENP Peru</a></td>
<td class="nump">$ 335,051<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed less purchase price.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed long term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt</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_GainOnAcquisitionOfSubsidiary">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain on acquisition of subsidiary.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_GainOnAcquisitionOfSubsidiary</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_InvestmentEliminatedUponConsolidation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Investment eliminated upon consolidation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126966197&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 https://asc.fasb.org/extlink&amp;oid=126975305&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 https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of assets acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of real estate acquired, at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EquityMethodInvestmentsAndJointVenturesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>72
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314901600">
<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, 2022</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="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="nump">$ 5,424,010<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="Show.showAR( this, 'defref_FSI_InvestmentEliminatedUponConsolidation', window );">Investment eliminated upon consolidation</a></td>
<td class="num">(41,538)<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="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="nump">5,458,895<span></span>
</td>
<td class="nump">$ 5,424,010<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="nump">22,642<span></span>
</td>
<td class="nump">3,822<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_EquityMethodInvestmentReturnOfEquity', window );">Return of equity</a></td>
<td class="num">(8,750)<span></span>
</td>
<td class="num">(3,822)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal', window );">Gain (loss) in equity method investment</a></td>
<td class="nump">27,646<span></span>
</td>
<td class="nump">22,642<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_InvestmentEliminatedUponConsolidation', window );">Investment eliminated upon consolidation</a></td>
<td class="num">(41,538)<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="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">22,642<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</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="Show.showAR( this, 'defref_FSI_EquityMethodInvestmentReturnOfEquity', window );">Return of equity</a></td>
<td class="num">(250,000)<span></span>
</td>
<td class="num">(325,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal', window );">Gain (loss) in equity method investment</a></td>
<td class="nump">307,527<span></span>
</td>
<td class="nump">454,023<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></td>
<td class="nump">3,758,895<span></span>
</td>
<td class="nump">3,701,368<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Beginning</a></td>
<td class="nump">$ 1,000,000<span></span>
</td>
<td class="nump">500,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Balance, Ending</a></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="Show.showAR( this, 'defref_FSI_AdditionalPaymentInvestment', window );">Additional payment investment</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_AdditionalPaymentInvestment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AdditionalPaymentInvestment</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Return of equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Investment eliminated upon consolidation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<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(10))<br> -URI https://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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8813-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>73
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312665680">
<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="1">6 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<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="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="Show.showAR( this, 'defref_us-gaap_GainsLossesOnSalesOfInvestmentRealEstate', window );">Net sales</a></td>
<td class="nump">$ 162,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 322,079<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_RealizedInvestmentGainsLossesNet', window );">Net income</a></td>
<td class="nump">$ 55,292<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">45,285<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnSalesOfInvestmentRealEstate', window );">Net sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 18,103,070<span></span>
</td>
<td class="nump">11,543,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="Show.showAR( this, 'defref_FSI_RealizedInvestmentGainsLossesNet', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">615,055<span></span>
</td>
<td class="nump">908,045<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RealizedInvestmentGainsLosses', window );">Gross profit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,204,311<span></span>
</td>
<td class="nump">$ 3,517,387<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=123605564&amp;loc=d3e23415-158514<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of realized gain (loss) on investment.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>74
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312945456">
<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="2">1 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Jan. 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="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Cash', window );">cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,115,099<span></span>
</td>
<td class="nump">$ 5,710,227<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Debt maturity date</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">Dec.  06,  2023<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="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Payments to Acquire Investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 500,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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromRelatedParties', window );">Sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,938,735<span></span>
</td>
<td class="nump">7,982,281<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="Show.showAR( this, 'defref_us-gaap_AccountsReceivableRelatedParties', window );">Accounts receivable related parties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,423,285<span></span>
</td>
<td class="nump">2,202,345<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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease', window );">Investment</a></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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease', window );">Investment</a></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>
<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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Common stock issued, shares</a></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>
<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="Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Share price</a></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>
<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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Payments to Acquire Investments</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="nump">$ 500,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="Show.showAR( this, 'defref_srt_OwnershipAxis=FSI_EnpPeruMember', window );">Enp Peru [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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="Show.showAR( this, 'defref_FSI_RemainningShareOutstanding', window );">Remainning share outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">506,659<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="Show.showAR( this, 'defref_us-gaap_Cash', window );">cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 259,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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByParent', window );">Minority Interest Ownership Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByParent', window );">Minority Interest Ownership Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership percentage</a></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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_NanoChemMember', window );">Nano Chem [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="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41.67%<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="Show.showAR( this, 'defref_FSI_AdditionalEquityMethodInvestmentOwnershipPercentage', window );">Additional ownership interest</a></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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=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>
<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="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8.33%<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="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Ownership 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">50.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_AdditionalEquityMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional equity method investment ownership percentage.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AdditionalEquityMethodInvestmentOwnershipPercentage</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_RemainningShareOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remainning share outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_RemainningShareOutstanding</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_AccountsReceivableRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For an unclassified balance sheet, amount of receivables arising from transactions with related parties.</p></div>
<a href="javascript:void(0);" onclick="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 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<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)(b))<br> -URI https://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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableRelatedParties</td>
</tr>
<tr>
<td style="padding-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_Cash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 21<br> -URI https://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631419-115840<br><br>Reference 4: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentMaturityDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="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.22(a)(2))<br> -URI https://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 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDate</td>
</tr>
<tr>
<td style="padding-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_EquityMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=124433917&amp;loc=SL114874234-224268<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_MinorityInterestOwnershipPercentageByParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsToAcquireInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueFromRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates.</p></div>
<a href="javascript:void(0);" onclick="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 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07.1(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=120401555&amp;loc=SL114874292-224272<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 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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)(4)(iii)(C))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-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.1(e))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromRelatedParties</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfEquityMethodInvestmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEquityMethodInvestmentsLineItems</td>
</tr>
<tr>
<td style="padding-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_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FloridaBasedLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_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_AppliedHoldingCorpMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_dei_LegalEntityAxis=FSI_TrioOpportunityCorpMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_LygosIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=FSI_EnpPeruMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_EnpPeruMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_EnpPeruInvestmentsLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_NanoChemMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_NanoChemMember</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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_EnpInvestmentsLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=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_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=FSI_FloridaBasedLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=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>75
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313471712">
<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>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Oct. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="nump">$ 2,818,591<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,300,819<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">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">3.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="Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_NanoChemSolutionIncMember', window );">NanoChem Solutions Inc [Member] | Stock Yard And 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>
<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="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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_LoanGuaranteedRate', window );">Loan guaranteed rate</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="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="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Line of credit</a></td>
<td class="nump">$ 1,400,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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_LoanGuaranteedRate', window );">Loan guaranteed rate</a></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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Line of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,600,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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | NanoChem Solutions Inc [Member] | Stock Yard And 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>
<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="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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_LoanGuaranteedRate', window );">Loan guaranteed 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>
<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="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Line of credit</a></td>
<td class="nump">$ 2,600,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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="nump">$ 2,477,794<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_TypeOfArrangementAxis=FSI_NewAgreementMember', window );">New Agreement [Member] | NanoChem Solutions Inc [Member] | Stock Bank [Member] | Revolving Credit Facility [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="nump">340,797<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember', window );">Midland States Bank [Member] | New Agreement [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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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>
<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="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateDuringPeriod', window );">Debt effective rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">0.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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 811,665<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember', window );">Midland States Bank [Member] | 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">$ 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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.50%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,489,154<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember', window );">Midland States Bank [Member] | New Agreement [Member] | Stock Yard And 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>
<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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Aggregate amount of revolving line of credit</a></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>
<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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">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">7.50%<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt face amount</a></td>
<td class="nump">$ 2,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="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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember', window );">Midland States Bank [Member] | New Agreement [Member] | Stock 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Aggregate amount of revolving line of credit</a></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>
<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="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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">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="text">&#160;<span></span>
</td>
<td class="nump">7.50%<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt face amount</a></td>
<td class="nump">$ 2,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="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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandStatesBankMember', window );">Midland States Bank [Member] | New Agreement [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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd', window );">Annual interest rate of loan</a></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="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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></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>
<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_EligiblePercentageOfDomesticAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Eligible percentage of domestic accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Loan guaranteed rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of foreign accounts receivable of inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LineOfCreditFacilityInterestRateAtPeriodEnd">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The effective interest rate during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_dei_LegalEntityAxis=FSI_NanoChemSolutionIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_LineOfCreditFacilityAxis=FSI_StockYardAndBankMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StockYardAndBankMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_LineOfCreditFacilityAxis=FSI_StockBankMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StockBankMember</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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_LineOfCreditFacilityAxis=FSI_HarrisBankMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionsByRelatedPartyAxis=FSI_HarrisBankMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_DebtInstrumentAxis=FSI_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>76
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312560768">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Balance, beginning of period</a></td>
<td class="nump">$ 2,366,598<span></span>
</td>
<td class="nump">$ 3,847,638<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromBankDebt', window );">Plus: Proceeds from loans</a></td>
<td class="nump">3,230,798<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="Show.showAR( this, 'defref_FSI_ProceedsFromLoanAcquiredFromAcquisition', window );">Plus: Loan acquired with acquisition of ENP Peru</a></td>
<td class="nump">2,849,500<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfBankDebt', window );">Less: Forgiveness on PPP loans</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(537,960)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForProceedsFromDepositOnLoan', window );">Less: Payments on loan</a></td>
<td class="num">(2,292,819)<span></span>
</td>
<td class="num">(943,080)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Balance, end of period</a></td>
<td class="nump">$ 6,154,077<span></span>
</td>
<td class="nump">$ 2,366,598<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_ProceedsFromLoanAcquiredFromAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from loan acquired from acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_ProceedsFromLoanAcquiredFromAcquisition</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3098-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromBankDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from bank borrowing during the year.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromBankDebt</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313348992">
<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, 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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">$ 6,154,077<span></span>
</td>
<td class="nump">$ 2,366,598<span></span>
</td>
<td class="nump">$ 3,847,638<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Less: current portion</a></td>
<td class="num">(717,612)<span></span>
</td>
<td class="num">(793,574)<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="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long term debt</a></td>
<td class="nump">5,436,465<span></span>
</td>
<td class="nump">1,573,024<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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">1,554,044<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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">381,674<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank &amp; 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">415,430<span></span>
</td>
<td class="nump">430,880<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustTwoMember', window );">Stock Yards Bank &amp; Trust 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">1,632,672<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustThreeMember', window );">Stock Yards Bank &amp; Trust Three [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">2,813,015<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustFourMember', window );">Stock Yards Bank &amp; Trust Four [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">256,162<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustFiveMember', window );">Stock Yards Bank &amp; Trust Five [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">$ 1,036,798<span></span>
</td>
<td class="text"> <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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="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(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_MidlandStatesBankMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_PaycheckProtectionProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StockYardsBankTrustTwoMember</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_StockYardsBankTrustThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StockYardsBankTrustThreeMember</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_StockYardsBankTrustFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StockYardsBankTrustFourMember</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_StockYardsBankTrustFiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StockYardsBankTrustFiveMember</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>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264308102240">
<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="5">1 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2022</div></th>
<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>Jan. 31, 2018</div></th>
<th class="th"><div>Dec. 31, 2022</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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">3.00%<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="Show.showAR( this, 'defref_us-gaap_InterestExpense', 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="nump">$ 292,949<span></span>
</td>
<td class="nump">$ 199,930<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_NanoChemMember', window );">Nano Chem [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</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">2,000,000<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="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense debt</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">23,632<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="Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt Long term debt amount</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">$ 1,036,798<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="Show.showAR( this, 'defref_dei_LegalEntityAxis=FSI_NanoChemMember', window );">Nano Chem [Member] | Term Loan [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">6.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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense debt</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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense debt</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">$ 5,816<span></span>
</td>
<td class="nump">24,827<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt Long term debt amount</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"> <span></span>
</td>
<td class="nump">381,674<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland 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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument term</a></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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense debt</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">30,334<span></span>
</td>
<td class="nump">69,831<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt Long term debt amount</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"> <span></span>
</td>
<td class="nump">1,554,044<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | NanoChem Solutions Inc [Member] | Term Loan [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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | ENP Mendota, LLC [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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</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">$ 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense debt</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">18,590<span></span>
</td>
<td class="nump">17,107<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt Long term debt amount</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">415,430<span></span>
</td>
<td class="nump">430,880<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | Nano Chem [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="nump">$ 1,935,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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument interest rate stated 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="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument term</a></td>
<td class="text">3 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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense debt</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">45,113<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="Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt Long term debt amount</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">1,632,672<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | Nano Chem [Member] | Term Loan [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument interest rate stated percentage</a></td>
<td class="nump">4.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | ENP Peru One [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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</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">$ 3,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,813,015<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LoansPayable', window );">First mortgage</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">$ 2,849,500<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="Show.showAR( this, 'defref_us-gaap_InterestExpense', 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="nump">62,679<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | ENP Peru One [Member] | Term Loan [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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | ENP Peru Investments [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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="nump">$ 259,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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Debt instrument term</a></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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest expense debt</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">7,077<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="Show.showAR( this, 'defref_us-gaap_DebtDefaultLongtermDebtAmount', window );">Debt Long term debt amount</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">$ 256,162<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_MidlandBankMember', window );">Midland Bank [Member] | ENP Peru Investments [Member] | Term Loan [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument interest rate stated percentage</a></td>
<td class="nump">5.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_FordMotorCreditCompanyMember', window );">Ford Motor Credit Company [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Debt instrument face amount</a></td>
<td class="text">&#160;<span></span>
</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="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="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">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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank &amp; 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=FSI_StockYardsBankTrustMember', window );">Stock Yards Bank &amp; 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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>
</tr>
</table>
<div style="display: none;">
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestExpenseDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LoansPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Including the current and noncurrent portions, aggregate carrying value as of the balance sheet date of loans payable (with maturities initially due after one year or beyond the operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126897435&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(22))<br> -URI https://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(16)(a)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LoansPayable</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NanoChemMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_NanoChemMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_VariableRateAxis=us-gaap_PrimeRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_EnpInvestmentsLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_NanoChemSolutionsIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_dei_LegalEntityAxis=FSI_ENPMendotaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ENPMendotaMember</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_ENPPeruOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ENPPeruOneMember</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_ENPPeruInvestmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ENPPeruInvestmentsMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_FordMotorCreditCompanyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StockYardsBankTrustMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_dei_LegalEntityAxis=FSI_EnpRealtyLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319989184">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Current tax, federal</a></td>
<td class="nump">$ 1,017,059<span></span>
</td>
<td class="nump">$ 1,309,503<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">Current tax, state</a></td>
<td class="nump">460,098<span></span>
</td>
<td class="nump">592,394<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Current tax, foreign</a></td>
<td class="nump">216,082<span></span>
</td>
<td class="nump">91,285<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_CurrentTax', window );">Current tax</a></td>
<td class="nump">1,693,239<span></span>
</td>
<td class="nump">1,993,182<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_IncomeTaxRecovery', window );">Income tax recovery</a></td>
<td class="num">(1,476,088)<span></span>
</td>
<td class="text"> <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="Show.showAR( this, 'defref_FSI_CurrentIncomeTaxExpenseBenefits', window );">Current tax, total</a></td>
<td class="nump">217,151<span></span>
</td>
<td class="nump">1,993,182<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">Deferred income tax, federal</a></td>
<td class="num">(49,088)<span></span>
</td>
<td class="nump">250,153<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">Deferred income tax, state</a></td>
<td class="num">(22,207)<span></span>
</td>
<td class="nump">113,164<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Deferred income tax, foreign</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax, total</a></td>
<td class="num">(71,295)<span></span>
</td>
<td class="nump">363,317<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total</a></td>
<td class="nump">$ 145,856<span></span>
</td>
<td class="nump">$ 2,356,499<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_CurrentIncomeTaxExpenseBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_CurrentIncomeTaxExpenseBenefits</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_CurrentTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_CurrentTax</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_IncomeTaxRecovery">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_IncomeTaxRecovery</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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>80
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313868416">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before tax</a></td>
<td class="nump">$ 7,859,085<span></span>
</td>
<td class="nump">$ 6,650,756<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_FSI_ExpectedIncomeTaxRecovery', window );">Expected income tax</a></td>
<td class="nump">$ 2,397,021<span></span>
</td>
<td class="nump">$ 2,028,481<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpense', window );">Non-deductible items</a></td>
<td class="num">(243,167)<span></span>
</td>
<td class="num">(29,508)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Change in estimates and other</a></td>
<td class="num">(2,004,041)<span></span>
</td>
<td class="num">(65,027)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate', window );">Change in enacted tax rate</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">337,961<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential', window );">Foreign tax rate difference</a></td>
<td class="num">(226,611)<span></span>
</td>
<td class="num">(86,696)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="nump">222,654<span></span>
</td>
<td class="num">(171,288)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total income tax expense</a></td>
<td class="nump">145,856<span></span>
</td>
<td class="nump">2,356,499<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current income tax expense</a></td>
<td class="nump">217,151<span></span>
</td>
<td class="nump">1,993,182<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred tax expense (recovery)</a></td>
<td class="num">$ (71,295)<span></span>
</td>
<td class="nump">$ 363,317<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expected income tax recovery.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126941158&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>81
<FILENAME>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314555728">
<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, 2022</div></th>
<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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Non capital loss carryforwards</a></td>
<td class="nump">$ 891,954<span></span>
</td>
<td class="nump">$ 1,443,371<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets', window );">Intangible assets</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">19,849<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipment', window );">Property, equipment and leaseholds</a></td>
<td class="nump">47,279<span></span>
</td>
<td class="nump">587,408<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Deferred tax assets gross</a></td>
<td class="nump">939,230<span></span>
</td>
<td class="nump">2,050,628<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation Allowance</a></td>
<td class="num">(939,230)<span></span>
</td>
<td class="num">(2,050,628)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNet', window );">Net deferred tax asset</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="Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipment', window );">Property, equipment and leaseholds</a></td>
<td class="num">(47,279)<span></span>
</td>
<td class="num">(587,408)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGoodwillAndIntangibleAssets', window );">Intangible assets</a></td>
<td class="num">(6,070)<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="Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipment', window );">Property, equipment and leaseholds</a></td>
<td class="num">(274,289)<span></span>
</td>
<td class="num">(12,697)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsInvestments', window );">Investments</a></td>
<td class="num">(7,676)<span></span>
</td>
<td class="num">(241,880)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne', window );">Property, equipment and leaseholds</a></td>
<td class="num">(486,713)<span></span>
</td>
<td class="num">(68,282)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_DeferredTaxAssetsPropertyPlantsAndEquipment', window );">Property, equipment and leaseholds</a></td>
<td class="nump">274,289<span></span>
</td>
<td class="nump">12,697<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsDerivativeInstruments', window );">Financial instruments</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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsLiabilitiesNet', window );">Net deferred tax asset (liability)</a></td>
<td class="num">$ (226,170)<span></span>
</td>
<td class="num">$ (297,465)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax asset not recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DeferredTaxAssetsPropertyPlantsAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets property plants and equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets property plants and equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredTaxAssetsLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>82
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264319989024">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">$ 3,878,060<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyTaxYearMember', window );">2030 [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">645,781<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyOneYearMember', window );">2031 [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">919,683<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyTwoYearMember', window );">2032 [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">601,379<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtySevenYearMember', window );">2037 [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">1,652,709<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandThirtyNineYearMember', window );">2039 [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">46,917<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxPeriodAxis=FSI_TwoThousandFourtyYearMember', window );">2040 [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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Total</a></td>
<td class="nump">$ 11,591<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_TaxPeriodAxis=FSI_TwoThousandThirtyTaxYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TwoThousandThirtyOneYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TwoThousandThirtyOneYearMember</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_TwoThousandThirtyTwoYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TwoThousandThirtyTwoYearMember</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_TwoThousandThirtySevenYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TwoThousandThirtySevenYearMember</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_TwoThousandThirtyNineYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TwoThousandThirtyNineYearMember</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_TwoThousandFourtyYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TwoThousandFourtyYearMember</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>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312606560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAXES (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</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="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="Show.showAR( this, 'defref_FSI_CurrentIncomeTaxExpense', window );">Current income tax expense</a></td>
<td class="nump">$ 1,476,088<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="nump">3,878,060<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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="nump">$ 3,878,060<span></span>
</td>
<td class="nump">$ 6,275,526<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_FSI_CurrentIncomeTaxExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Current income tax expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_CurrentIncomeTaxExpense</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_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>84
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314538896">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to controlling interest</a></td>
<td class="nump">$ 7,021,604<span></span>
</td>
<td class="nump">$ 3,449,162<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">12,379,316<span></span>
</td>
<td class="nump">12,316,254<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted</a></td>
<td class="nump">12,466,415<span></span>
</td>
<td class="nump">12,505,522<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic</a></td>
<td class="nump">$ 0.57<span></span>
</td>
<td class="nump">$ 0.28<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted</a></td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.28<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<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 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: 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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 10: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<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 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 15: 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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 16: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 17: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (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="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 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 2: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<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 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<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 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<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 https://asc.fasb.org/extlink&amp;oid=126732423&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 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: 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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 15: 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)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 16: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>85
<FILENAME>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318443712">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive options</a></td>
<td class="nump">1,304,000<span></span>
</td>
<td class="nump">21,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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>86
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264318530112">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>87
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312510464">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares, Beginning Balance</a></td>
<td class="nump">789,500<span></span>
</td>
<td class="nump">749,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of shares, Granted</a></td>
<td class="nump">981,000<span></span>
</td>
<td class="nump">170,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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice', window );">Exercise price per share, Granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.61<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Weighted average exercise price, Granted</a></td>
<td class="nump">$ 3.55<span></span>
</td>
<td class="nump">$ 3.61<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Number of shares, Cancelled or expired</a></td>
<td class="num">(13,486)<span></span>
</td>
<td class="num">(34,799)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Weighted average exercise price, Cancelled or expired</a></td>
<td class="nump">$ 2.32<span></span>
</td>
<td class="nump">$ 2.30<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Number of shares, Exercised</a></td>
<td class="num">(71,014)<span></span>
</td>
<td class="num">(94,701)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted average exercise price, Exercised</a></td>
<td class="nump">$ 1.98<span></span>
</td>
<td class="nump">$ 1.58<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of shares, Ending Balance</a></td>
<td class="nump">1,686,000<span></span>
</td>
<td class="nump">789,500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted average exercise price, Ending Balance</a></td>
<td class="nump">$ 3.26<span></span>
</td>
<td class="nump">$ 2.78<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Number of shares Exercisable, Ending Balance</a></td>
<td class="nump">680,000<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Weighted average exercise price, Ending Balance</a></td>
<td class="nump">$ 2.92<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="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="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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice', window );">Exercise price per share, Beginning Balance</a></td>
<td class="nump">1.42<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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice', window );">Exercise price per share, Granted</a></td>
<td class="nump">3.55<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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice', window );">Exercise price per share,cancelled</a></td>
<td class="nump">1.70<span></span>
</td>
<td class="nump">1.42<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice', window );">Exercise price per share, Exercised</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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice', window );">Exercise price per share, Ending Balance</a></td>
<td class="nump">1.70<span></span>
</td>
<td class="nump">1.42<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice', window );">Exercise price per share Exercisable, Ending Balance</a></td>
<td class="nump">1.70<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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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">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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice', window );">Exercise price per share, Granted</a></td>
<td class="nump">3.61<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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice', window );">Exercise price per share,cancelled</a></td>
<td class="nump">3.61<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="Show.showAR( this, 'defref_FSI_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice', window );">Exercise price per share, Exercised</a></td>
<td class="nump">2.44<span></span>
</td>
<td class="nump">3.46<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cancelled or expired, Exercise price per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Exercised, Exercise price per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share, Granted.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<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 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<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 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>88
<FILENAME>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312123344">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.23%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Volatility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">63.28%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average fair value of options granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.23<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Interest rate</a></td>
<td class="nump">1.76%<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Volatility</a></td>
<td class="nump">66.01%<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average fair value of options granted</a></td>
<td class="nump">$ 1.46<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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Interest rate</a></td>
<td class="nump">3.64%<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Volatility</a></td>
<td class="nump">69.66%<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average fair value of options granted</a></td>
<td class="nump">$ 1.65<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313790336">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted-average remaining contractual life</a></td>
<td class="text">3 years 10 months 24 days<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">981,000<span></span>
</td>
<td class="nump">170,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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">71,014<span></span>
</td>
<td class="nump">94,701<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Stock vested compensation non vested</a></td>
<td class="nump">$ 1,432,960<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="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average period expected to be recognized</a></td>
<td class="text">3 months 27 days<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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue', window );">Aggregate intrinsic value of vested options</a></td>
<td class="nump">$ 69,190<span></span>
</td>
<td class="nump">$ 712,945<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested', window );">Aggregate intrinsic value of vested options exercised</a></td>
<td class="nump">$ 96,989<span></span>
</td>
<td class="nump">$ 203,701<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">46,000<span></span>
</td>
<td class="nump">45,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="Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock option expense</a></td>
<td class="nump">$ 14,850<span></span>
</td>
<td class="nump">$ 13,860<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_AdditionalExpensesDueToOptionsGranted', window );">Additional expenses due to options granted</a></td>
<td class="nump">$ 62,187<span></span>
</td>
<td class="nump">$ 51,210<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">16,514<span></span>
</td>
<td class="nump">33,201<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">935,000<span></span>
</td>
<td class="nump">125,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="Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock option expense</a></td>
<td class="nump">$ 172,731<span></span>
</td>
<td class="nump">$ 38,500<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_AdditionalExpensesDueToOptionsGranted', window );">Additional expenses due to options granted</a></td>
<td class="nump">$ 149,380<span></span>
</td>
<td class="nump">$ 106,542<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">54,500<span></span>
</td>
<td class="nump">61,500<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional expenses due to options granted.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>90
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312883648">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">71,014<span></span>
</td>
<td class="nump">94,701<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_StockOptionMember', window );">Equity 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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">54,500<span></span>
</td>
<td class="nump">61,500<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_StockOptionMember', window );">Equity Option [Member] | Consultant [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Stock options exercised</a></td>
<td class="nump">16,514<span></span>
</td>
<td class="nump">33,201<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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=us-gaap_StockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=us-gaap_StockOptionMember</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_ConsultantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ConsultantMember</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>R77.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264309671648">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Beginning balance</a></td>
<td class="nump">$ 2,602,843<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="Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Distribution</a></td>
<td class="num">(689,434)<span></span>
</td>
<td class="num">$ (804,003)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Non-controlling interest share of income</a></td>
<td class="nump">691,625<span></span>
</td>
<td class="nump">845,095<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Ending balance</a></td>
<td class="nump">2,605,034<span></span>
</td>
<td class="nump">2,602,843<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Beginning balance</a></td>
<td class="nump">2,602,843<span></span>
</td>
<td class="nump">2,561,751<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders', window );">Distribution</a></td>
<td class="num">(689,434)<span></span>
</td>
<td class="num">(804,003)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Non-controlling interest share of income</a></td>
<td class="nump">691,625<span></span>
</td>
<td class="nump">845,095<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Distribution to noncontrolling interests, Ending balance</a></td>
<td class="nump">$ 2,605,034<span></span>
</td>
<td class="nump">$ 2,602,843<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of Net Income (Loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>92
<FILENAME>R78.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312050064">
<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="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToMinorityShareholders', window );">Partnership distribution to non-controlling interest</a></td>
<td class="nump">$ 689,434<span></span>
</td>
<td class="nump">$ 804,003<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="nump">9,449,857<span></span>
</td>
<td class="nump">7,129,329<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_NoncontrollingInterestMember', window );">Noncontrolling Interest [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,877,690<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="nump">3,634,083<span></span>
</td>
<td class="nump">$ 2,215,119<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_StatementEquityComponentsAxisipAxis=us-gaap_NoncontrollingInterestMember', window );">Noncontrolling Interest [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Sales</a></td>
<td class="nump">$ 6,667,815<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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToMinorityShareholders', window );">Partnership distribution to non-controlling interest</a></td>
<td class="nump">$ 2,506,518<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_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_MinorityInterestOwnershipPercentageByParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="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 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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 https://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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<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 https://asc.fasb.org/extlink&amp;oid=126975872&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)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<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)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 23: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_us-gaap_StatementEquityComponentsAxis=us-gaap_NoncontrollingInterestMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StatementEquityComponentsAxis=us-gaap_NoncontrollingInterestMember</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_FSI_StatementEquityComponentsAxisipAxis=us-gaap_NoncontrollingInterestMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">FSI_StatementEquityComponentsAxisipAxis=us-gaap_NoncontrollingInterestMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>93
<FILENAME>R79.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264312583520">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">$ 45,840,469<span></span>
</td>
<td class="nump">$ 34,416,335<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="nump">292,949<span></span>
</td>
<td class="nump">199,930<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">145,856<span></span>
</td>
<td class="nump">2,356,499<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Segment profit</a></td>
<td class="nump">7,021,604<span></span>
</td>
<td class="nump">3,449,162<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for segment assets</a></td>
<td class="nump">1,981,307<span></span>
</td>
<td class="nump">782,219<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=FSI_SegmentMember', window );">Segment [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">45,840,469<span></span>
</td>
<td class="nump">34,416,335<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="nump">292,949<span></span>
</td>
<td class="nump">199,930<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationNonproduction', window );">Depreciation</a></td>
<td class="nump">1,277,431<span></span>
</td>
<td class="nump">965,935<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">145,856<span></span>
</td>
<td class="nump">2,356,499<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Segment profit</a></td>
<td class="nump">7,713,229<span></span>
</td>
<td class="nump">4,294,257<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_Segmentassets', window );">Segment assets</a></td>
<td class="nump">51,587,192<span></span>
</td>
<td class="nump">39,551,270<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for segment assets</a></td>
<td class="nump">1,981,307<span></span>
</td>
<td class="nump">782,219<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=FSI_EWCPMember', window );">EWCP [Member] | Segment [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">528,462<span></span>
</td>
<td class="nump">420,811<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="text"> <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="Show.showAR( this, 'defref_us-gaap_DepreciationNonproduction', window );">Depreciation</a></td>
<td class="nump">33,876<span></span>
</td>
<td class="nump">40,247<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">18,898<span></span>
</td>
<td class="nump">24,384<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Segment profit</a></td>
<td class="num">(334,525)<span></span>
</td>
<td class="num">(368,994)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_Segmentassets', window );">Segment assets</a></td>
<td class="nump">2,810,091<span></span>
</td>
<td class="nump">1,929,537<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=FSI_TPAMember', window );">TPA [Member] | Segment [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales</a></td>
<td class="nump">45,312,007<span></span>
</td>
<td class="nump">33,995,524<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="nump">292,949<span></span>
</td>
<td class="nump">199,930<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationNonproduction', window );">Depreciation</a></td>
<td class="nump">1,243,555<span></span>
</td>
<td class="nump">925,688<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Current and deferred income tax expense</a></td>
<td class="nump">126,958<span></span>
</td>
<td class="nump">2,332,115<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Segment profit</a></td>
<td class="nump">8,047,754<span></span>
</td>
<td class="nump">4,663,251<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_Segmentassets', window );">Segment assets</a></td>
<td class="nump">48,777,101<span></span>
</td>
<td class="nump">37,621,733<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Expenditures for segment assets</a></td>
<td class="nump">$ 1,981,307<span></span>
</td>
<td class="nump">$ 782,219<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Segment assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126732423&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126958026&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126975872&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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=FSI_SegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=FSI_SegmentMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TPAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TPAMember</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>R80.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264320209024">
<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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total</a></td>
<td class="nump">$ 45,840,469<span></span>
</td>
<td class="nump">$ 34,416,335<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total</a></td>
<td class="nump">552,123<span></span>
</td>
<td class="nump">525,900<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total</a></td>
<td class="nump">$ 45,288,346<span></span>
</td>
<td class="nump">$ 33,890,435<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126920106&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 https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>95
<FILENAME>R81.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313744496">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Total</a></td>
<td class="nump">$ 14,850,786<span></span>
</td>
<td class="nump">$ 10,296,954<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Total</a></td>
<td class="nump">150,890<span></span>
</td>
<td class="nump">191,752<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Total</a></td>
<td class="nump">$ 14,699,896<span></span>
</td>
<td class="nump">$ 10,105,202<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>96
<FILENAME>R82.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264314961344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative) - Accounts Receivable [Member] - 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, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts Receivable, after Allowance for Credit Loss</a></td>
<td class="nump">$ 27,775,617<span></span>
</td>
<td class="nump">$ 16,917,947<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_FSI_StockOptionExercisePercent', window );">Stock option exercise percent</a></td>
<td class="nump">61.00%<span></span>
</td>
<td class="nump">49.00%<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock option exercise percent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126942793&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 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_MajorCustomersAxis=FSI_ThreeCustomersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>97
<FILENAME>R83.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140264313435984">
<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. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">981,000<span></span>
</td>
<td class="nump">170,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="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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">8,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="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>
<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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">46,000<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="Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=FSI_ConsultantsMember', window );">Consultants [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="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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Stock options granted</a></td>
<td class="nump">1,272<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TitleOfIndividualAxis=FSI_ConsultantsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>98
<FILENAME>form10-k_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/20221231"
  xmlns:country="http://xbrl.sec.gov/country/2022"
  xmlns:dei="http://xbrl.sec.gov/dei/2022"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  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-20221231.xsd" xlink:type="simple"/>
    <context id="From2022-01-01to2022-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="AsOf2023-03-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2023-03-30</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2022-12-31</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="From2021-01-012021-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="AsOf2020-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2020-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="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_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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpInvestmentsLLCMember</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="From2022-01-012022-12-31_custom_EnpPeruMember_custom_UnrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpPeruMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:UnrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_EnpPeruMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpPeruMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_EnpPeruMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">FSI:EnpPeruMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="From2022-01-012022-12-31_custom_InvestmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:InvestmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_SoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">FSI:SoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</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_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="AsOf2021-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
        </entity>
        <period>
            <instant>2021-03-31</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="From2022-01-012022-12-31_us-gaap_PatentsMember84249640">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-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:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_NanoChemMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_EnpInvestmentsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-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_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_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>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="AsOf2019-01-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-01-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-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="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_FloridaBasedLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">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_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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="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="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="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember84251703">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:EnpPeruInvestmentsLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-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="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703">
        <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_FloridaBasedLLCMember84251718">
        <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="AsOf2022-12-31_custom_FloridaBasedLLCMember84251734">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:FloridaBasedLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </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="From2022-01-012022-06-30_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2022-03-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>2022-03-31</instant>
        </period>
    </context>
    <context id="From2022-03-012022-03-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>2022-03-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-03-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>2022-03-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="AsOf2022-03-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>2022-03-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-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="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</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>2022-06-30</instant>
        </period>
    </context>
    <context id="From2022-06-012022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</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>2022-06-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-06-30_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="AsOf2022-06-30_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockYardAndBankMember</xbrldi:explicitMember>
                <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="AsOf2022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockBankMember</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>2022-06-30</instant>
        </period>
    </context>
    <context id="From2022-06-012022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockBankMember</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>2022-06-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2022-09-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockBankMember</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>2022-09-30</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockBankMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">FSI:NewAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemSolutionIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">FSI:StockBankMember</xbrldi:explicitMember>
                <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="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember">
        <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:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-01-31</instant>
        </period>
    </context>
    <context id="From2018-01-012018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember">
        <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:EnpInvestmentsLLCMember</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_EnpInvestmentsLLCMember">
        <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:EnpInvestmentsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-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_EnpInvestmentsLLCMember">
        <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:EnpInvestmentsLLCMember</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_EnpInvestmentsLLCMember">
        <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: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="From2022-01-012022-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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </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-10-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-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="From2020-10-012020-10-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>
            <startDate>2020-10-01</startDate>
            <endDate>2020-10-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </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="AsOf2022-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>2022-12-31</instant>
        </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-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
        <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:ENPMendotaMember</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_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
        <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:ENPMendotaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_ENPMendotaMember_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:ENPMendotaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ENPMendotaMember_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:ENPMendotaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
        <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:ENPMendotaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">
        <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:ENPMendotaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-06-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_NanoChemMember_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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_NanoChemMember_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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
        <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:ENPPeruOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruOneMember">
        <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:ENPPeruOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="From2020-01-012020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
        <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:ENPPeruOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
        <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:ENPPeruOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
        <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:ENPPeruOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
        <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:ENPPeruOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">
        <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:ENPPeruOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
        <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
        <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-06-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruInvestmentsMember">
        <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_ENPPeruInvestmentsMember_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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ENPPeruInvestmentsMember_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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
        <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">
        <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:ENPPeruInvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TermLoanMember_custom_NanoChemMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TermLoanMember_us-gaap_PrimeRateMember_custom_NanoChemMember">
        <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:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">FSI:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_NanoChemMember_custom_TermLoanMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_NanoChemMember_custom_TermLoanMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_TermLoanMember_custom_NanoChemMember">
        <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:NanoChemMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-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>2022-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="AsOf2022-12-31_custom_StockYardsBankTrustTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_StockYardsBankTrustTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_StockYardsBankTrustThreeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_StockYardsBankTrustThreeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_StockYardsBankTrustFourMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_StockYardsBankTrustFourMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_StockYardsBankTrustFiveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_StockYardsBankTrustFiveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">FSI:StockYardsBankTrustFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </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="AsOf2022-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>2022-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="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TwoThousandThirtyOneYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyOneYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TwoThousandThirtyTwoYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyTwoYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TwoThousandThirtySevenYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtySevenYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TwoThousandThirtyNineYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandThirtyNineYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TwoThousandFourtyYearMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">FSI:TwoThousandFourtyYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_StockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_StockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_StockOptionMember_custom_ConsultantMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_StockOptionMember_custom_ConsultantMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember84259375">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="FSI:StatementEquityComponentsAxisipAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember">
        <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">FSI:SegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:TPAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_SegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember">
        <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">FSI:SegmentMember</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_TPAMember_custom_SegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">FSI:TPAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</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_SegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">FSI:SegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="From2022-01-012022-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>2022-01-01</startDate>
            <endDate>2022-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="AsOf2022-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>2022-12-31</instant>
        </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="AsOf2022-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>2022-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="AsOf2022-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>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_ThreeCustomersMember_us-gaap_AccountsReceivableMember">
        <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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </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_us-gaap_AccountsReceivableMember">
        <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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2023-01-012023-03-31_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>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="From2023-01-012023-03-31_custom_ConsultantsMember_us-gaap_SubsequentEventMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069394</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">FSI:ConsultantsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</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="From2022-01-01to2022-12-31">0001069394</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="From2022-01-01to2022-12-31">false</dei:AmendmentFlag>
    <dei:EntityIncorporationStateCountryCode contextRef="From2022-01-01to2022-12-31">A0</dei:EntityIncorporationStateCountryCode>
    <dei:DocumentFiscalPeriodFocus contextRef="From2022-01-01to2022-12-31">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityIncorporationStateCountryCode contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0024">A0</dei:EntityIncorporationStateCountryCode>
    <FSI:FiniteLivedPatentGross
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0079"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:GainLossOnSaleOfLand
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0271"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:PppLoanForgiveness
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0274"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:GainOnAcquisition
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0281"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:GainLossOnSaleOfLand
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0367"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:GainOnAcquisitionOfSubsidiary
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0371"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:PaycheckProtectionProgramLoanForgiveness
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0373"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0403"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0410"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0412"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0431"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0473"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0491"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0492"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0493"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0496"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0499"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0500"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0502"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0509"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0510"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0512"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0517"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0518"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0519"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0520"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2021-01-012021-12-31_us-gaap_ParentMember"
      id="xdx2ixbrl0521"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0525"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0527"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0528"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0530"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0553"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0554"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0555"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0558"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0561"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0562"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0564"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0571"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0572"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0574"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0579"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember"
      id="xdx2ixbrl0580"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0581"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0582"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-012022-12-31_us-gaap_ParentMember"
      id="xdx2ixbrl0583"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0587"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0589"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0590"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember"
      id="xdx2ixbrl0592"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember"
      id="xdx2ixbrl0843"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_DevelopedTechnologyRightsMember"
      id="xdx2ixbrl0846"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_LandMember"
      id="xdx2ixbrl0848"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember"
      id="xdx2ixbrl0879"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_DevelopedTechnologyRightsMember"
      id="xdx2ixbrl0882"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_LandMember"
      id="xdx2ixbrl0884"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0917"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember84251703"
      id="xdx2ixbrl1028"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2022-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      id="xdx2ixbrl1109"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LinesOfCreditCurrent
      contextRef="AsOf2022-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      id="xdx2ixbrl1125"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember"
      id="xdx2ixbrl1147"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2021-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember"
      id="xdx2ixbrl1161"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      id="xdx2ixbrl1197"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2022-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      id="xdx2ixbrl1210"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_NanoChemMember_custom_TermLoanMember_custom_MidlandBankMember"
      id="xdx2ixbrl1240"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember"
      id="xdx2ixbrl1244"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember"
      id="xdx2ixbrl1255"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember"
      id="xdx2ixbrl1259"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_ENPPeruInvestmentsMember_custom_TermLoanMember_custom_MidlandBankMember"
      id="xdx2ixbrl1269"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember"
      id="xdx2ixbrl1273"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_NanoChemMember_custom_TermLoanMember"
      id="xdx2ixbrl1281"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_NanoChemMember"
      id="xdx2ixbrl1285"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromBankDebt
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1296"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:ProceedsFromLoanAcquiredFromAcquisition
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1299"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:RepaymentsOfBankDebt
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1301"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_MidlandStatesBankMember"
      id="xdx2ixbrl1312"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember"
      id="xdx2ixbrl1313"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_PaycheckProtectionProgramMember"
      id="xdx2ixbrl1315"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramMember"
      id="xdx2ixbrl1316"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_PaycheckProtectionProgramOneMember"
      id="xdx2ixbrl1318"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_PaycheckProtectionProgramOneMember"
      id="xdx2ixbrl1319"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_MidlandStatesBankOneMember"
      id="xdx2ixbrl1321"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_MidlandStatesBankTwoMember"
      id="xdx2ixbrl1324"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_StockYardsBankTrustTwoMember"
      id="xdx2ixbrl1331"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_StockYardsBankTrustThreeMember"
      id="xdx2ixbrl1334"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_StockYardsBankTrustFourMember"
      id="xdx2ixbrl1337"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_StockYardsBankTrustFiveMember"
      id="xdx2ixbrl1340"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:IncomeTaxRecovery
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1368"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1379"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1380"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1405"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:CurrentIncomeTaxExpense
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1428"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      id="xdx2ixbrl1436"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      id="xdx2ixbrl1452"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      id="xdx2ixbrl1454"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1456"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1458"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1462"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsDerivativeInstruments
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1476"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsDerivativeInstruments
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1478"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:DeferredTaxAssetNotRecognized
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1480"
      unitRef="USD"
      xsi:nil="true"/>
    <FSI:DeferredTaxAssetNotRecognized
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      id="xdx2ixbrl1482"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestExpense
      contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember"
      id="xdx2ixbrl1746"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember"
      id="xdx2ixbrl1766"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember"
      id="xdx2ixbrl1774"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember"
      id="xdx2ixbrl1794"
      unitRef="USD"
      xsi:nil="true"/>
    <dei:DocumentType contextRef="From2022-01-01to2022-12-31">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="From2022-01-01to2022-12-31">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="From2022-01-01to2022-12-31">2022-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate contextRef="From2022-01-01to2022-12-31">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="From2022-01-01to2022-12-31">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="From2022-01-01to2022-12-31">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="From2022-01-01to2022-12-31">001-31540</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="From2022-01-01to2022-12-31">FLEXIBLE SOLUTIONS INTERNATIONAL, INC.</dei:EntityRegistrantName>
    <dei:EntityTaxIdentificationNumber contextRef="From2022-01-01to2022-12-31">71-1630889</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="From2022-01-01to2022-12-31">6001     54 Ave.</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="From2022-01-01to2022-12-31">Taber</dei:EntityAddressCityOrTown>
    <dei:EntityAddressCountry contextRef="From2022-01-01to2022-12-31">CA</dei:EntityAddressCountry>
    <dei:EntityAddressPostalZipCode contextRef="From2022-01-01to2022-12-31">T1G     1X4</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="From2022-01-01to2022-12-31">(403)</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="From2022-01-01to2022-12-31">223-2995</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="From2022-01-01to2022-12-31">Common     Stock, $0.001 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="From2022-01-01to2022-12-31">FSI</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="From2022-01-01to2022-12-31">NYSEAMER</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="From2022-01-01to2022-12-31">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="From2022-01-01to2022-12-31">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="From2022-01-01to2022-12-31">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="From2022-01-01to2022-12-31">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="From2022-01-01to2022-12-31">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="From2022-01-01to2022-12-31">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="From2022-01-01to2022-12-31">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag contextRef="From2022-01-01to2022-12-31">false</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany contextRef="From2022-01-01to2022-12-31">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat contextRef="AsOf2022-06-30" decimals="0" unitRef="USD">19343103</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding contextRef="AsOf2023-03-30" decimals="INF" unitRef="Shares">12435532</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorFirmId contextRef="From2022-01-01to2022-12-31">995</dei:AuditorFirmId>
    <dei:AuditorName contextRef="From2022-01-01to2022-12-31">Smythe LLP</dei:AuditorName>
    <dei:AuditorLocation contextRef="From2022-01-01to2022-12-31">Vancouver, Canada</dei:AuditorLocation>
    <us-gaap:Cash contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6115099</us-gaap:Cash>
    <us-gaap:Cash contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">5710227</us-gaap:Cash>
    <us-gaap:DepositsAssetsCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">700000</us-gaap:DepositsAssetsCurrent>
    <us-gaap:DepositsAssetsCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1025347</us-gaap:DepositsAssetsCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">9449857</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7129329</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">14419430</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">9502005</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">310297</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">442161</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:AssetsCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">30994683</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">23809069</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">9709288</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">4931713</us-gaap:PropertyPlantAndEquipmentNet>
    <FSI:FiniteLivedPatentGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">13699</FSI:FiniteLivedPatentGross>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">167222</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">217267</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2440000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2600000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:EquityMethodInvestments contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">5458895</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestments contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">5424010</us-gaap:EquityMethodInvestments>
    <us-gaap:Goodwill contextRef="AsOf2022-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:DeferredIncomeTaxAssetsNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">274289</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12697</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:Assets contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">51587192</us-gaap:Assets>
    <us-gaap:Assets contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">39551270</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">873904</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1283486</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">959856</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">457062</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DeferredRevenueCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">387763</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">349004</us-gaap:DeferredRevenueCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">4486350</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">4561396</us-gaap:TaxesPayableCurrent>
    <us-gaap:LinesOfCreditCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2818591</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2300819</us-gaap:LinesOfCreditCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">58080</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">77715</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">717612</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">793574</us-gaap:LongTermDebtCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">10302156</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">9823056</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">109142</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">139552</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">500459</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">310162</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">5436465</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1573024</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:Liabilities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">16348222</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">11845794</us-gaap:Liabilities>
    <us-gaap:CommonStockSharesAuthorized contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesIssued contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">12426260</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">12426260</us-gaap:CommonStockSharesOutstanding>
    <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:CommonStockValue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">12426</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12355</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">12426</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12355</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">17523345</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">16983648</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">-805799</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">-775730</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">15903964</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">8882360</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">32633936</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">25102633</us-gaap:StockholdersEquity>
    <us-gaap:MinorityInterest contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2605034</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterest contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2602843</us-gaap:MinorityInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">35238970</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">27705476</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">51587192</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">39551270</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">45840469</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">34416335</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">31971596</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">23019824</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">13868873</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">11396511</us-gaap:GrossProfit>
    <us-gaap:SalariesAndWages
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">2537783</us-gaap:SalariesAndWages>
    <us-gaap:SalariesAndWages
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2321285</us-gaap:SalariesAndWages>
    <us-gaap:OfficersCompensation
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1032394</us-gaap:OfficersCompensation>
    <us-gaap:OfficersCompensation
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">883460</us-gaap:OfficersCompensation>
    <us-gaap:GeneralInsuranceExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">683272</us-gaap:GeneralInsuranceExpense>
    <us-gaap:GeneralInsuranceExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">581187</us-gaap:GeneralInsuranceExpense>
    <us-gaap:ProfessionalFees
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">660821</us-gaap:ProfessionalFees>
    <us-gaap:ProfessionalFees
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">285424</us-gaap:ProfessionalFees>
    <us-gaap:OtherGeneralExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">350126</us-gaap:OtherGeneralExpense>
    <us-gaap:OtherGeneralExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">269459</us-gaap:OtherGeneralExpense>
    <FSI:Consulting
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">312171</FSI:Consulting>
    <FSI:Consulting
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">320759</FSI:Consulting>
    <us-gaap:InterestExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">292949</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">199930</us-gaap:InterestExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">182609</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">172185</us-gaap:SellingAndMarketingExpense>
    <FSI:InvestorRelationsAndTransferAgentFee
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">179505</FSI:InvestorRelationsAndTransferAgentFee>
    <FSI:InvestorRelationsAndTransferAgentFee
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">94256</FSI:InvestorRelationsAndTransferAgentFee>
    <us-gaap:TravelAndEntertainmentExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">171369</us-gaap:TravelAndEntertainmentExpense>
    <us-gaap:TravelAndEntertainmentExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">107894</us-gaap:TravelAndEntertainmentExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">149446</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">382663</us-gaap:OperatingLeaseExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">99275</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">116411</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:CommunicationsAndInformationTechnology
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">42098</us-gaap:CommunicationsAndInformationTechnology>
    <us-gaap:CommunicationsAndInformationTechnology
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">45482</us-gaap:CommunicationsAndInformationTechnology>
    <FSI:Commissions
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">30732</FSI:Commissions>
    <FSI:Commissions
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">62632</FSI:Commissions>
    <us-gaap:UtilitiesOperatingExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">29517</us-gaap:UtilitiesOperatingExpense>
    <us-gaap:UtilitiesOperatingExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">21523</us-gaap:UtilitiesOperatingExpense>
    <FSI:ShippingCost
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">23469</FSI:ShippingCost>
    <FSI:ShippingCost
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">16567</FSI:ShippingCost>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-23091</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-25091</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">17869</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">6979</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:OperatingExpenses
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">6818496</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">5913187</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7050377</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">5483324</us-gaap:OperatingIncomeLoss>
    <FSI:GainLossOnSaleOfLand
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">44330</FSI:GainLossOnSaleOfLand>
    <FSI:PppLoanForgiveness
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">537960</FSI:PppLoanForgiveness>
    <us-gaap:GainLossOnInvestments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">341424</us-gaap:GainLossOnInvestments>
    <us-gaap:GainLossOnInvestments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">507143</us-gaap:GainLossOnInvestments>
    <FSI:GainOnAcquisition
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">335051</FSI:GainOnAcquisition>
    <us-gaap:InterestIncomeOther
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">132233</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">77999</us-gaap:InterestIncomeOther>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7859085</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">6650756</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-71295</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <FSI:CurrentIncomeTaxExpenseBenefits
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">217151</FSI:CurrentIncomeTaxExpenseBenefits>
    <FSI:CurrentIncomeTaxExpenseBenefits
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1993182</FSI:CurrentIncomeTaxExpenseBenefits>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7713229</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">4294257</us-gaap:ProfitLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">691625</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">845095</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7021604</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">3449162</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.57</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.28</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.28</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">12379316</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">12316254</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">12466415</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">12505522</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7713229</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">4294257</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-30069</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">96391</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7683160</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">4390648</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">691625</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">845095</us-gaap:ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">6991535</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">3545553</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7713229</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">4294257</us-gaap:ProfitLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">399148</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">210112</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1277431</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">965935</us-gaap:DepreciationAndAmortization>
    <FSI:LeaseRightOfUseFinancing
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">8566</FSI:LeaseRightOfUseFinancing>
    <FSI:LeaseRightOfUseFinancing
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">22057</FSI:LeaseRightOfUseFinancing>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">50045</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">265846</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:GainLossOnInvestments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">341424</us-gaap:GainLossOnInvestments>
    <us-gaap:GainLossOnInvestments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">507143</us-gaap:GainLossOnInvestments>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">17869</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">6979</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-71295</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <FSI:GainLossOnSaleOfLand
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">44330</FSI:GainLossOnSaleOfLand>
    <FSI:GainOnAcquisitionOfSubsidiary
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">335051</FSI:GainOnAcquisitionOfSubsidiary>
    <FSI:PaycheckProtectionProgramLoanForgiveness
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">537960</FSI:PaycheckProtectionProgramLoanForgiveness>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">2338397</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1246495</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">4124022</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1275746</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-131864</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">139714</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-700191</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">102856</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-249628</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2021048</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">38759</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">34727</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1476903</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">4535746</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">500000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleOfEquityMethodInvestments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">265001</us-gaap:ProceedsFromSaleOfEquityMethodInvestments>
    <us-gaap:ProceedsFromSaleOfEquityMethodInvestments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">359300</us-gaap:ProceedsFromSaleOfEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">499329</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">263380</us-gaap:ProceedsFromSaleOfOtherPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1981307</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">782219</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-2215635</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-659539</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">517772</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">184746</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">2292819</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">943080</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">3230798</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">58611</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">287903</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsToMinorityShareholders
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">689434</us-gaap:PaymentsToMinorityShareholders>
    <us-gaap:PaymentsToMinorityShareholders
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">804003</us-gaap:PaymentsToMinorityShareholders>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">140620</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">140440</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">848326</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-1709800</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-30069</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">96391</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">79525</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2262798</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6815099</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">6735574</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:Cash contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6115099</us-gaap:Cash>
    <us-gaap:Cash contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">5710227</us-gaap:Cash>
    <us-gaap:ShortTermInvestments contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">700000</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1025347</us-gaap:ShortTermInvestments>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6815099</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">6735574</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">158966</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">292949</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">179029</us-gaap:InterestPaidNet>
    <FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">793403</FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities>
    <FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">250923</FSI:InventoryAdditionsInAccountsPayableAndAccruedLiabilities>
    <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-012021-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-012021-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-012021-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-012021-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-012021-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: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:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">-30069</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2022-01-012022-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">-30069</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-30069</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">7021604</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-012022-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">7021604</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">691625</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7713229</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">71014</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">71</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">140549</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2022-01-012022-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">140620</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">140620</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">689434</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">689434</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2022-01-012022-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">399148</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2022-01-012022-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">399148</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">399148</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">12426260</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">12426</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">17523345</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">15903964</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">-805799</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">32633936</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">2605034</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">35238970</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">12426260</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">12426</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_custom_CapitalInExcessOfParValueMember"
      decimals="0"
      unitRef="USD">17523345</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">15903964</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">-805799</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_ParentMember"
      decimals="0"
      unitRef="USD">32633936</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2022-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">2605034</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">35238970</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_807_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_z45Rge9nNb4c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;1.
&lt;span&gt;Basis of Presentation&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;/span&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_829_zljdzL11lUjg" style="display: none; font-family: Times New Roman, Times, Serif"&gt;BASIS
OF PRESENTATION&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 (&#x201c;consolidated financial statements&#x201d;) 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.,
its 97% controlling interest in ENP Peru Investments LLC (&#x201c;ENP Peru&#x201d;) and its &lt;span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpInvestmentsLlcAndEnpMendotaMember_zqUdhlwfgce2" 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; 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; 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_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember_zxBCwElOH0ea" 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_90E_eus-gaap--BusinessCombinationConsiderationTransferred1_pp0p0_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember_zh6RtWdCaqk9" title="Purchase price"&gt;5,110,560&lt;/span&gt;. An unrelated
party owns the remaining &lt;span id="xdx_905_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20180101__20181231__srt--OwnershipAxis__custom--EnpInvestmentsLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zW2d5qujsE89" 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_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MinimumMember_znVpeDh9Un7k" title="Subsidiary company ownership interest rate"&gt;24&lt;/span&gt;% to &lt;span id="xdx_907_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20200101__20201231__srt--OwnershipAxis__custom--EnpRealtyLLCMember__srt--RangeAxis__srt--MaximumMember_zgp4GYOEpc7h" 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; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
2022, NanoChem purchased an additional &lt;span id="xdx_901_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--UnrelatedPartyMember_zLmIIdFV9fQb" title="Subsidiary company ownership interest rate"&gt;50&lt;/span&gt;% in ENP Peru, increasing its share to &lt;span id="xdx_900_ecustom--IncreaseDecreaseInSharePercentage_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_z7tNfAo7BTB" title="Increase decrease in share percentage"&gt;91.67&lt;/span&gt;%. ENP Investments owns the remaining &lt;span id="xdx_907_ecustom--RemainingInvestmentOwnedPercentage_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_ztZW8HIiYID" title="Remaining investment owned percentage"&gt;8.33&lt;/span&gt;%, of
which the Company has a &lt;span id="xdx_907_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_ziji1DBYjeoe" title="Subsidiary company ownership interest rate"&gt;65&lt;/span&gt;% interest. ENP Peru was previously accounted for under the equity method however, is now consolidated into
the financial statements from the date control was obtained. The &lt;span id="xdx_903_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpPeruMember_z9oGO3r1DlCd" title="Minority interest ownership percentage by parent"&gt;35&lt;/span&gt;% non-controlling interest portion of the 8.33% held by ENP Investments
is included in non-controlling interests in these consolidated financial statements.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; 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; 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"&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"&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:BusinessDescriptionAndBasisOfPresentationTextBlock>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2022-01-012022-12-31_custom_EnpInvestmentsLlcAndEnpMendotaMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2018-01-012018-12-31_custom_EnpInvestmentsLLCMember"
      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:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2022-01-012022-12-31_custom_EnpPeruMember_custom_UnrelatedPartyMember"
      decimals="INF"
      unitRef="Pure">0.50</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <FSI:IncreaseDecreaseInSharePercentage
      contextRef="From2022-01-012022-12-31_custom_EnpPeruMember"
      decimals="INF"
      unitRef="Pure">0.9167</FSI:IncreaseDecreaseInSharePercentage>
    <FSI:RemainingInvestmentOwnedPercentage
      contextRef="From2022-01-012022-12-31_custom_EnpPeruMember"
      decimals="INF"
      unitRef="Pure">0.0833</FSI:RemainingInvestmentOwnedPercentage>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2022-01-012022-12-31_custom_EnpPeruMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:MinorityInterestOwnershipPercentageByParent
      contextRef="AsOf2022-12-31_custom_EnpPeruMember"
      decimals="INF"
      unitRef="Pure">0.35</us-gaap:MinorityInterestOwnershipPercentageByParent>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_808_eus-gaap--SignificantAccountingPoliciesTextBlock_zlcpZVOjF64c" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b/&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="font-family: Times New Roman, Times, Serif"&gt;&lt;span id="xdx_82B_zhzxATf78ISk" style="display: none"&gt;SIGNIFICANT
ACCOUNTING POLICIES&lt;/span&gt;&lt;span style="font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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--CashAndCashEquivalentsPolicyTextBlock_zazRiQrOtSdl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_863_zKcF4dgaJPMb"&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; 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; 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; 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_843_ecustom--TermDepositsPolicyTextBlock_z0egtWF4e6kd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86B_z1oQH8A1LHMk"&gt;Term Deposits&lt;/span&gt;.&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
deposits maintained by the Company with banks comprises term deposits. The Company has two term deposits, the first for $&lt;span id="xdx_909_eus-gaap--Deposits_iI_c20221231_zhlpEQpH0bwb" title="Deposit"&gt;700,000&lt;/span&gt;
that matures in 2023 and pays interest at a rate of &lt;span id="xdx_909_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231_z7aSS1v1inqe" title="Debt interest rate"&gt;3.0&lt;/span&gt;%.
If withdrawn before maturity, the greater of the loss of accrued interest or $&lt;span id="xdx_905_eus-gaap--InterestPayableCurrentAndNoncurrent_iI_c20221231_zp3VpQbjVBL5" title="Accured interest"&gt;150&lt;/span&gt;,
plus 1% of the principal shall be levied. The other term deposit for $&lt;span id="xdx_90B_ecustom--OtherTermDeposit_iI_c20221231_zWMzSzrnxkE" title="Other term deposit"&gt;300,000&lt;/span&gt;
pays 1.3% interest, matures in 2023 and can be withdrawn by the Company at any point without prior notice or penalty on the
principal.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_842_eus-gaap--InventoryPolicyTextBlock_zeaVgjM50V31" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_862_zPjRTXgGmRE2"&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; 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; 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. Cost is determined on a first-in, first-out basis or weighted average cost
formula 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 (2022 - $&lt;span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_ze7gYqt712ac" title="Sales"&gt;433,015&lt;/span&gt;; 2021 - $&lt;span id="xdx_90F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zZfdPWsbvrE" title="Sales"&gt;465,493&lt;/span&gt;). Shipping and handling costs
incurred are included in cost of goods sold (2022 - $&lt;span id="xdx_908_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zh3H76QAZxt1" title="Cost of sales"&gt;913,890&lt;/span&gt;; 2021 - $&lt;span id="xdx_90A_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zy87PLGBULC8" title="Cost of sales"&gt;1,058,674&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_ziGSUbSIY0oh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_862_zCf4zWhAYy13"&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; 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; 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; 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_845_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_zmApyTRZLNK5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86D_zn84cbk4eIkj"&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; 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_zOH9hl7J6SRe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_8B0_zXclfCEmLkR4" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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: 80%; 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: 49%"&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: 49%"&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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_ztRd9ikOnKV9" 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;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_901_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z77p6PImsJ0j" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zo32bFiXs3gh" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zNMzEAb7yOY4" 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_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zPWqBDoMbVv" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zXC5UmZH81J9" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zCjKXAFyZ23f" 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_907_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_z4RuVp7DBong" 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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zxoxGw8w76z" 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_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z1XrN8TFIK1l" 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 &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_903_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--CustomerRelationshipsMember_zQGyUOKauyUb" 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
    &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_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareMember_zMsy4SHmjndg" 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_8AC_zx2MO2p9RHvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zOk0PIZVKmLl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86B_zymt0U4CtS8a"&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; 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; 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;Property, Plant and Equipment&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; 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_845_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_z0Vioh4spxeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(g)
&lt;i&gt;&lt;span id="xdx_867_zgWr1WjPiyr9"&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; 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; 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; 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; 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; 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_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zx9nyMvM2uC2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86E_zqtTMryuchT5"&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; 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; 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
18.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 free-on-board
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; 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; 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; 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; 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; 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 id="xdx_846_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zxTgKl7lUTH1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_864_z2VJsu9smxM7"&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; 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; 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; 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"&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_845_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zKZA4jCplGwh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_868_zH3DgkOzs263"&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; 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; text-align: justify; text-indent: 0.5in"&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; 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; 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; 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_844_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zlxCLSa6fOmb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86E_zy1cTJIDrKEf"&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; 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; 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 related to the translation of subsidiaries&#x2019; functional currency into the reporting currency.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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--EarningsPerSharePolicyTextBlock_zY3jIEuSS1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(l)
&lt;i&gt;&lt;span id="xdx_86A_z8ck7T4gSKEl"&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; 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; 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 the years ended December
31, 2022 and 2021.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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_846_eus-gaap--UseOfEstimates_zrumup7AyQik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(m)
&lt;i&gt;&lt;span id="xdx_86C_z8sTHA7m8L2l"&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; 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; 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; 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; 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; 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; 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, 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 and the valuation of inventory.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_843_eus-gaap--FairValueOfFinancialInstrumentsPolicy_zIjCAySF2sb4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(n)
&lt;i&gt;&lt;span id="xdx_867_zm6IdG6A2nvb"&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; 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; 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"&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"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&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"&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"&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"&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;&#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"&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;&#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; 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; 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, 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; 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; 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 approximate 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; 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_84A_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zjbHjtvyr5C5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zet6bHsrErGg"&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; 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; 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; 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; 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; 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; 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. The Company is not aware of any contingencies at the date of these consolidated financials statements.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_842_eus-gaap--IncomeTaxPolicyTextBlock_zZMgNq2KcDNe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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;(p)
&lt;i&gt;&lt;span id="xdx_866_zoxYsO3rEui4"&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; 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; 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 computed by multiplying the Company&#x2019;s &lt;span style="font-family: Times New Roman, Times, Serif"&gt;taxable
&lt;/span&gt;net income by the Company&#x2019;s effective tax rates. Deferred income tax assets and liabilities are recognized for the future tax consequences
attributable to differences between the &lt;span&gt;consolidated&lt;/span&gt; financial statement carrying amounts of existing
assets and liabilities and their respective tax bases, and operating loss carry-forwards, &lt;span&gt;if any&lt;/span&gt;. Deferred
income 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 income tax assets and liabilities of a change in
tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to reduce the carrying
amount of deferred income tax assets if it is considered more likely than not that some portion, or all, of the deferred income tax assets
will not be realized.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 740, &lt;i&gt;Income taxes&lt;/i&gt; (ASC 740) 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, 2022, 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"&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"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p id="xdx_846_eus-gaap--ConcentrationRiskCreditRisk_z7zMXGIcafY9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zfVzWjpTjH75"&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; 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; text-align: justify; margin: 0pt; 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_905_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zzsCVFT5YIm5" title="Sales"&gt;27,775,617&lt;/span&gt;
(&lt;span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_z0EDxo9FgWEl" title="Accounts receivable, after allowance for credit loss"&gt;61&lt;/span&gt;%) for the year ended December 31, 2022 (2021 - $&lt;span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zuRfBH2lIaQ5" title="Sales"&gt;16,917,947&lt;/span&gt; or &lt;span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zwe1PI7n21j" title="Accounts receivable, after allowance for credit loss"&gt;49&lt;/span&gt;%). Accounts receivable for the Company&#x2019;s three primary customers
totaled $&lt;span id="xdx_904_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z0Glx4WSJjMl" title="Accounts receivable, after allowance for credit loss"&gt;6,124,424&lt;/span&gt; (&lt;span id="xdx_907_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zwBakjUGHaxf" title="Accounts receivable, after allowance for credit loss, percentage"&gt;65&lt;/span&gt;%) at December 31, 2022 (2021 - $&lt;span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z6NIde61G83j" title="Accounts receivable, after allowance for credit loss"&gt;4,940,995&lt;/span&gt; or &lt;span id="xdx_90C_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkW2vXSnAjQg" title="Accounts receivable, after allowance for credit loss, percentage"&gt;69&lt;/span&gt;%).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 is limited because the Company limits its exposure to credit loss by placing its cash 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; 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; 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; 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; 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, 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; 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; 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; 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; 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; text-align: justify; 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_845_eus-gaap--EquityMethodInvestmentsPolicy_zETmP5gP4c4f" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_861_zn4gwZImqwM4"&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; 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; 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_904_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20220101__20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--InvestmentMember_zZ3qzx6VNFu2" title="Equity method investment, description"&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; 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_844_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_ziV4ZDSAspjh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_867_zHsFqoWjWKGc"&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; 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; 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 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; 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"&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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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.
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; 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; 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 350, &lt;i&gt;Intangibles &#x2013; Goodwill and Other, &lt;/i&gt;(ASC 350), qualitative assessments of goodwill
and indefinite-lived intangible assets were performed in 2022 and 2021. 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 amounts. 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, 2022.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&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; 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--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zjXTjhs11Tvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(t)
&lt;i&gt;&lt;span id="xdx_863_zAjxh6jBNKZ"&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; text-align: justify; text-indent: 45.8pt"&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; 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_859_zawBq1LmDMvh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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:SignificantAccountingPoliciesTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84C_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zazRiQrOtSdl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_863_zKcF4dgaJPMb"&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; 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; 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; 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>
    <FSI:TermDepositsPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_843_ecustom--TermDepositsPolicyTextBlock_z0egtWF4e6kd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86B_z1oQH8A1LHMk"&gt;Term Deposits&lt;/span&gt;.&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
deposits maintained by the Company with banks comprises term deposits. The Company has two term deposits, the first for $&lt;span id="xdx_909_eus-gaap--Deposits_iI_c20221231_zhlpEQpH0bwb" title="Deposit"&gt;700,000&lt;/span&gt;
that matures in 2023 and pays interest at a rate of &lt;span id="xdx_909_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231_z7aSS1v1inqe" title="Debt interest rate"&gt;3.0&lt;/span&gt;%.
If withdrawn before maturity, the greater of the loss of accrued interest or $&lt;span id="xdx_905_eus-gaap--InterestPayableCurrentAndNoncurrent_iI_c20221231_zp3VpQbjVBL5" title="Accured interest"&gt;150&lt;/span&gt;,
plus 1% of the principal shall be levied. The other term deposit for $&lt;span id="xdx_90B_ecustom--OtherTermDeposit_iI_c20221231_zWMzSzrnxkE" title="Other term deposit"&gt;300,000&lt;/span&gt;
pays 1.3% interest, matures in 2023 and can be withdrawn by the Company at any point without prior notice or penalty on the
principal.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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:TermDepositsPolicyTextBlock>
    <us-gaap:Deposits contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">700000</us-gaap:Deposits>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage contextRef="AsOf2022-12-31" decimals="INF" unitRef="Pure">0.030</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestPayableCurrentAndNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">150</us-gaap:InterestPayableCurrentAndNoncurrent>
    <FSI:OtherTermDeposit contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">300000</FSI:OtherTermDeposit>
    <us-gaap:InventoryPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_842_eus-gaap--InventoryPolicyTextBlock_zeaVgjM50V31" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_862_zPjRTXgGmRE2"&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; 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; 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. Cost is determined on a first-in, first-out basis or weighted average cost
formula 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 (2022 - $&lt;span id="xdx_906_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_ze7gYqt712ac" title="Sales"&gt;433,015&lt;/span&gt;; 2021 - $&lt;span id="xdx_90F_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zZfdPWsbvrE" title="Sales"&gt;465,493&lt;/span&gt;). Shipping and handling costs
incurred are included in cost of goods sold (2022 - $&lt;span id="xdx_908_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20220101__20221231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zh3H76QAZxt1" title="Cost of sales"&gt;913,890&lt;/span&gt;; 2021 - $&lt;span id="xdx_90A_eus-gaap--CostOfGoodsAndServicesSold_pp0p0_c20210101__20211231__srt--ProductOrServiceAxis__us-gaap--ShippingAndHandlingMember_zy87PLGBULC8" title="Cost of sales"&gt;1,058,674&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-012022-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">433015</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">465493</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2022-01-012022-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">913890</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2021-01-012021-12-31_us-gaap_ShippingAndHandlingMember"
      decimals="0"
      unitRef="USD">1058674</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_841_eus-gaap--PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy_ziGSUbSIY0oh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_862_zCf4zWhAYy13"&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; 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; 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; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_845_eus-gaap--PropertyPlantAndEquipmentPolicyTextBlock_zmApyTRZLNK5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86D_zn84cbk4eIkj"&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; 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_zOH9hl7J6SRe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_8B0_zXclfCEmLkR4" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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: 80%; 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: 49%"&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: 49%"&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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_ztRd9ikOnKV9" 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;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_901_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z77p6PImsJ0j" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zo32bFiXs3gh" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zNMzEAb7yOY4" 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_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zPWqBDoMbVv" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zXC5UmZH81J9" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zCjKXAFyZ23f" 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_907_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_z4RuVp7DBong" 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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zxoxGw8w76z" 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_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z1XrN8TFIK1l" 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 &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_903_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--CustomerRelationshipsMember_zQGyUOKauyUb" 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
    &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_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareMember_zMsy4SHmjndg" 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_8AC_zx2MO2p9RHvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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:PropertyPlantAndEquipmentPolicyTextBlock>
    <FSI:ScheduleOfMethodOfDepreciationTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_898_ecustom--ScheduleOfMethodOfDepreciationTableTextBlock_zOH9hl7J6SRe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_8B0_zXclfCEmLkR4" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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: 80%; 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: 49%"&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: 49%"&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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_ztRd9ikOnKV9" 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;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_901_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_z77p6PImsJ0j" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zo32bFiXs3gh" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zNMzEAb7yOY4" 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_900_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zPWqBDoMbVv" 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_90F_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zXC5UmZH81J9" 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_904_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zCjKXAFyZ23f" 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_907_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--PatentsMember_z4RuVp7DBong" 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_90B_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--TechnologyEquipmentMember_zxoxGw8w76z" 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_90A_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z1XrN8TFIK1l" 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 &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_903_ecustom--DepreciationMethodUsedAndAnnualRate_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--CustomerRelationshipsMember_zQGyUOKauyUb" 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
    &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_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--SoftwareMember_zMsy4SHmjndg" 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="From2022-01-012022-12-31_us-gaap_ComputerEquipmentMember">30%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_MachineryAndEquipmentMember">20%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember">20%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_custom_BoatMember">20%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_BuildingAndBuildingImprovementsMember">10%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_custom_TrailerMember">30%
    Declining balance</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_AutomobilesMember">Straight-line
    over 5 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_PatentsMember">Straight-line
    over 17 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_TechnologyEquipmentMember">Straight-line
    over 10 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_LeaseholdImprovementsMember">Straight-line
    over lease term</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_us-gaap_CustomerRelationshipsMember">Straight-line
    over 15 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <FSI:DepreciationMethodUsedAndAnnualRate contextRef="From2022-01-012022-12-31_custom_SoftwareMember">Straight-line
    over 3 years</FSI:DepreciationMethodUsedAndAnnualRate>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84D_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zOk0PIZVKmLl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86B_zymt0U4CtS8a"&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; 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; 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;Property, Plant and Equipment&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; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_845_eus-gaap--ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_z0Vioh4spxeh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(g)
&lt;i&gt;&lt;span id="xdx_867_zgWr1WjPiyr9"&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; 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; 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; 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; 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; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zx9nyMvM2uC2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86E_zqtTMryuchT5"&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; 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; 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
18.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 free-on-board
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; 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; 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; 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; 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; 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;

</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <FSI:StockIssuedInExchangeForServicesPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_846_ecustom--StockIssuedInExchangeForServicesPolicyTextBlock_zxTgKl7lUTH1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_864_z2VJsu9smxM7"&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; 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; 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; 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"&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="From2022-01-01to2022-12-31">&lt;p id="xdx_845_eus-gaap--CompensationRelatedCostsPolicyTextBlock_zKZA4jCplGwh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_868_zH3DgkOzs263"&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; 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; text-align: justify; text-indent: 0.5in"&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; 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; 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; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_844_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zlxCLSa6fOmb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_86E_zy1cTJIDrKEf"&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; 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; 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 related to the translation of subsidiaries&#x2019; functional currency into the reporting currency.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_84D_eus-gaap--EarningsPerSharePolicyTextBlock_zY3jIEuSS1qk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(l)
&lt;i&gt;&lt;span id="xdx_86A_z8ck7T4gSKEl"&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; 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; 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 the years ended December
31, 2022 and 2021.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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="From2022-01-01to2022-12-31">&lt;p id="xdx_846_eus-gaap--UseOfEstimates_zrumup7AyQik" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(m)
&lt;i&gt;&lt;span id="xdx_86C_z8sTHA7m8L2l"&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; 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; 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; 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; 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; 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; 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, 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 and the valuation of inventory.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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:UseOfEstimates>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_843_eus-gaap--FairValueOfFinancialInstrumentsPolicy_zIjCAySF2sb4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(n)
&lt;i&gt;&lt;span id="xdx_867_zm6IdG6A2nvb"&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; 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; 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"&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"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&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"&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"&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"&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;&#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"&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;&#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; 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; 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, 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; 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; 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 approximate 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; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_84A_eus-gaap--CommitmentsAndContingenciesPolicyTextBlock_zjbHjtvyr5C5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zet6bHsrErGg"&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; 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; 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; 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; 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; 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; 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. The Company is not aware of any contingencies at the date of these consolidated financials statements.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_842_eus-gaap--IncomeTaxPolicyTextBlock_zZMgNq2KcDNe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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;(p)
&lt;i&gt;&lt;span id="xdx_866_zoxYsO3rEui4"&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; 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; 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 computed by multiplying the Company&#x2019;s &lt;span style="font-family: Times New Roman, Times, Serif"&gt;taxable
&lt;/span&gt;net income by the Company&#x2019;s effective tax rates. Deferred income tax assets and liabilities are recognized for the future tax consequences
attributable to differences between the &lt;span&gt;consolidated&lt;/span&gt; financial statement carrying amounts of existing
assets and liabilities and their respective tax bases, and operating loss carry-forwards, &lt;span&gt;if any&lt;/span&gt;. Deferred
income 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 income tax assets and liabilities of a change in
tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to reduce the carrying
amount of deferred income tax assets if it is considered more likely than not that some portion, or all, of the deferred income tax assets
will not be realized.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 740, &lt;i&gt;Income taxes&lt;/i&gt; (ASC 740) 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, 2022, 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"&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"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ConcentrationRiskCreditRisk contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_846_eus-gaap--ConcentrationRiskCreditRisk_z7zMXGIcafY9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zfVzWjpTjH75"&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; 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; text-align: justify; margin: 0pt; 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_905_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zzsCVFT5YIm5" title="Sales"&gt;27,775,617&lt;/span&gt;
(&lt;span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_z0EDxo9FgWEl" title="Accounts receivable, after allowance for credit loss"&gt;61&lt;/span&gt;%) for the year ended December 31, 2022 (2021 - $&lt;span id="xdx_90D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pp0p0_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_zuRfBH2lIaQ5" title="Sales"&gt;16,917,947&lt;/span&gt; or &lt;span id="xdx_90F_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--RevenueFromContractWithCustomerMember_zwe1PI7n21j" title="Accounts receivable, after allowance for credit loss"&gt;49&lt;/span&gt;%). Accounts receivable for the Company&#x2019;s three primary customers
totaled $&lt;span id="xdx_904_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z0Glx4WSJjMl" title="Accounts receivable, after allowance for credit loss"&gt;6,124,424&lt;/span&gt; (&lt;span id="xdx_907_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20220101__20221231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zwBakjUGHaxf" title="Accounts receivable, after allowance for credit loss, percentage"&gt;65&lt;/span&gt;%) at December 31, 2022 (2021 - $&lt;span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pp0p0_c20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember_z6NIde61G83j" title="Accounts receivable, after allowance for credit loss"&gt;4,940,995&lt;/span&gt; or &lt;span id="xdx_90C_ecustom--ConcentrationRiskThresholdPercentage_pid_dp_uPure_c20210101__20211231__us-gaap--ConcentrationRiskByTypeAxis__custom--ThreePrimaryCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkW2vXSnAjQg" title="Accounts receivable, after allowance for credit loss, percentage"&gt;69&lt;/span&gt;%).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 is limited because the Company limits its exposure to credit loss by placing its cash 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; 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; 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; 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; 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, 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; 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; 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; 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; 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; text-align: justify; 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:ConcentrationRiskCreditRisk>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2022-01-012022-12-31_custom_ThreePrimaryCustomersMember"
      decimals="0"
      unitRef="USD">27775617</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <FSI:ConcentrationRiskThresholdPercentage
      contextRef="From2022-01-012022-12-31_custom_ThreePrimaryCustomersMember_us-gaap_RevenueFromContractWithCustomerMember"
      decimals="INF"
      unitRef="Pure">0.61</FSI:ConcentrationRiskThresholdPercentage>
    <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:AccountsReceivableNet
      contextRef="AsOf2022-12-31_custom_ThreePrimaryCustomersMember"
      decimals="0"
      unitRef="USD">6124424</us-gaap:AccountsReceivableNet>
    <FSI:ConcentrationRiskThresholdPercentage
      contextRef="From2022-01-012022-12-31_custom_ThreePrimaryCustomersMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.65</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:EquityMethodInvestmentsPolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_845_eus-gaap--EquityMethodInvestmentsPolicy_zETmP5gP4c4f" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_861_zn4gwZImqwM4"&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; 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; 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_904_eus-gaap--EquityMethodInvestmentDescriptionOfPrincipalActivities_c20220101__20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--InvestmentMember_zZ3qzx6VNFu2" title="Equity method investment, description"&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; 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:EquityMethodInvestmentsPolicy>
    <us-gaap:EquityMethodInvestmentDescriptionOfPrincipalActivities contextRef="From2022-01-012022-12-31_custom_InvestmentMember">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:GoodwillAndIntangibleAssetsPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_844_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_ziV4ZDSAspjh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_867_zHsFqoWjWKGc"&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; 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; 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 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; 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"&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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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.
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; 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; 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 350, &lt;i&gt;Intangibles &#x2013; Goodwill and Other, &lt;/i&gt;(ASC 350), qualitative assessments of goodwill
and indefinite-lived intangible assets were performed in 2022 and 2021. 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 amounts. 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, 2022.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&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; 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:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_849_eus-gaap--NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_zjXTjhs11Tvf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;(t)
&lt;i&gt;&lt;span id="xdx_863_zAjxh6jBNKZ"&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; text-align: justify; text-indent: 45.8pt"&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; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_80C_eus-gaap--LesseeOperatingLeasesTextBlock_zmko7BGbFVE3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;3.
&lt;span&gt;Leases&lt;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_826_zP0aUS8RyO9" style="display: none; font-family: Times New Roman, Times, Serif"&gt;LEASES&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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-long term 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_90B_eus-gaap--LesseeOperatingLeaseDiscountRate_iI_pid_dp_uPure_c20221231_zvu0FpaZW3W9" 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; 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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_zjqrXHh7ecy1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zcWt63vyDvj8" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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; border-collapse: collapse; width: 90%; margin-left: 0.5in"&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&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: 80%"&gt;Balance at December 31, 2020&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--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zl3Y5Y19Mgy5" style="width: 16%; text-align: right" title="Right of use assets, beginning balance"&gt;483,113&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;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_98C_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zQCW8HHk5T1d" 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_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20220101__20221231_zkrTKUxdLIP7" style="text-align: right" title="Right of use assets, beginning 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 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_988_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20220101__20221231_zq2GCT1M9pS2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation"&gt;(50,045&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;Balance at December 31, 2022&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--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20220101__20221231_zlYyfgjB8St2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Right of use assets, ending balance"&gt;167,222&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;/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, 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_981_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_zHQL6BaeDfzd" style="text-align: right" title="Lease liability, beginning 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: 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_989_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_ziy6LuuHcDtg" 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: 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_c20210101__20211231_z54seAXcsdL1" 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: 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_983_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20220101__20221231_zPlddSdIbac9" style="text-align: right" title="Lease liability, beginning 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 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_984_ecustom--LeaseInterestExpense_pp0p0_c20220101__20221231_z6rENlYxm7l6" style="text-align: right" title="Lease interest expense"&gt;8,566&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_981_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20220101__20221231_zLtu4CyVNwYc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments"&gt;(58,611&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, 2022&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_c20220101__20221231_zGrPmdQqEocj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease liability, ending balance"&gt;167,222&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_980_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20221231_zbRRLRIuZAy5" style="text-align: right" title="Short-term portion"&gt;58,080&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_98C_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20221231_z9W7PIl57Rod" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion"&gt;109,142&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_984_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20221231_zpORKgkyLf1l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;167,222&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_zJrTdoe69Dyf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zPZhutpoW4bl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_8BA_zCKzwPUm0Rzi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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="font: 10pt Times New Roman, Times, Serif; display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&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_498_20221231_zSKidC56c3Rl" 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--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_z2KtkfZZ7Xz" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: justify"&gt;2023&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;58,080&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_zQxB1PGW33V3" style="vertical-align: bottom; background-color: White"&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;59,520&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_zj4Yai8HEZw5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;61,020&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_zldNHSLP7ba8" style="vertical-align: bottom; background-color: White"&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;178,620&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_z590Af5dIow9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;(11,398&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: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;Lease liability, December 31, 2022&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;167,222&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_zZtVrMuNAjxc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeOperatingLeaseDiscountRate contextRef="AsOf2022-12-31" decimals="INF" unitRef="Pure">0.055</us-gaap:LesseeOperatingLeaseDiscountRate>
    <FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_894_ecustom--SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock_zjqrXHh7ecy1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_zcWt63vyDvj8" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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; border-collapse: collapse; width: 90%; margin-left: 0.5in"&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&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: 80%"&gt;Balance at December 31, 2020&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--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20210101__20211231_zl3Y5Y19Mgy5" style="width: 16%; text-align: right" title="Right of use assets, beginning balance"&gt;483,113&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;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_98C_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20210101__20211231_zQCW8HHk5T1d" 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_989_eus-gaap--OperatingLeaseRightOfUseAsset_iS_pp0p0_c20220101__20221231_zkrTKUxdLIP7" style="text-align: right" title="Right of use assets, beginning 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 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_988_eus-gaap--OperatingLeaseRightOfUseAssetAmortizationExpense_iN_pp0p0_di_c20220101__20221231_zq2GCT1M9pS2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Depreciation"&gt;(50,045&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;Balance at December 31, 2022&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--OperatingLeaseRightOfUseAsset_iE_pp0p0_c20220101__20221231_zlYyfgjB8St2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Right of use assets, ending balance"&gt;167,222&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;/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, 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_981_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20210101__20211231_zHQL6BaeDfzd" style="text-align: right" title="Lease liability, beginning 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: 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_989_ecustom--LeaseInterestExpense_pp0p0_c20210101__20211231_ziy6LuuHcDtg" 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: 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_c20210101__20211231_z54seAXcsdL1" 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: 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_983_eus-gaap--OperatingLeaseLiability_iS_pp0p0_c20220101__20221231_zPlddSdIbac9" style="text-align: right" title="Lease liability, beginning 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 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_984_ecustom--LeaseInterestExpense_pp0p0_c20220101__20221231_z6rENlYxm7l6" style="text-align: right" title="Lease interest expense"&gt;8,566&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_981_eus-gaap--OperatingLeasePayments_iN_pp0p0_di_c20220101__20221231_zLtu4CyVNwYc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Payments"&gt;(58,611&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, 2022&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_c20220101__20221231_zGrPmdQqEocj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Lease liability, ending balance"&gt;167,222&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_980_eus-gaap--OperatingLeaseLiabilityCurrent_iI_pp0p0_c20221231_zbRRLRIuZAy5" style="text-align: right" title="Short-term portion"&gt;58,080&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_98C_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_pp0p0_c20221231_z9W7PIl57Rod" style="border-bottom: Black 1.5pt solid; text-align: right" title="Long-term portion"&gt;109,142&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_984_eus-gaap--OperatingLeaseLiability_iI_pp0p0_c20221231_zpORKgkyLf1l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;167,222&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="AsOf2020-12-31" decimals="0" unitRef="USD">483113</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="From2021-01-012021-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:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">50045</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">167222</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">483113</us-gaap:OperatingLeaseLiability>
    <FSI:LeaseInterestExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">22057</FSI:LeaseInterestExpense>
    <us-gaap:OperatingLeasePayments
      contextRef="From2021-01-012021-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>
    <FSI:LeaseInterestExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">8566</FSI:LeaseInterestExpense>
    <us-gaap:OperatingLeasePayments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">58611</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">167222</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">58080</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">109142</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">167222</us-gaap:OperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_892_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zPZhutpoW4bl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_8BA_zCKzwPUm0Rzi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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="font: 10pt Times New Roman, Times, Serif; display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: justify"&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_498_20221231_zSKidC56c3Rl" 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--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pp0p0_maLOLLPz1VZ_z2KtkfZZ7Xz" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: justify"&gt;2023&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;58,080&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_zQxB1PGW33V3" style="vertical-align: bottom; background-color: White"&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;59,520&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_zj4Yai8HEZw5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;61,020&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_zldNHSLP7ba8" style="vertical-align: bottom; background-color: White"&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;178,620&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_z590Af5dIow9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;(11,398&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: White"&gt;
    &lt;td style="text-align: justify; padding-bottom: 1.5pt"&gt;Lease liability, December 31, 2022&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;167,222&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="AsOf2022-12-31" decimals="0" unitRef="USD">58080</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">59520</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">61020</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">178620</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">11398</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">167222</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinancingReceivablesTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80E_eus-gaap--FinancingReceivablesTextBlock_zZU5T8DTn8Ec" style="font: 10pt Times New Roman, Times, Serif; margin: 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;span id="xdx_829_zLaPJZlkdwhh" style="display: none; font-family: Times New Roman, Times, Serif"&gt;ACCOUNTS
RECEIVABLE&lt;/span&gt;&lt;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_896_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_z1gCTWL1Qtn5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BA_zgNdG9PP2wr5" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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_20221231_zaE2ZofO2zGb" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20211231_zcXC0Rt4it1h" 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;/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_407_eus-gaap--AccountsReceivableGross_iI_pp0p0_maAANRNzCGO_maAANRNzPjC_z2kAp2mbcu19" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;9,739,150&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;7,403,308&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_iNI_pp0p0_di_msAANRNzCGO_msAANRNzPjC_zMGyNvd1haA7" 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;(289,293&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;(273,979&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_iTI_pp0p0_mtAANRNzPjC_zUgrRJlWSYHf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; 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;9,449,857&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;7,129,329&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_zUTbvaDHlzCl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
</us-gaap:FinancingReceivablesTextBlock>
    <us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_896_eus-gaap--AccountsReceivableAllowanceForCreditLossTableTextBlock_z1gCTWL1Qtn5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BA_zgNdG9PP2wr5" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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_20221231_zaE2ZofO2zGb" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20211231_zcXC0Rt4it1h" 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;/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_407_eus-gaap--AccountsReceivableGross_iI_pp0p0_maAANRNzCGO_maAANRNzPjC_z2kAp2mbcu19" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;9,739,150&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;7,403,308&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_iNI_pp0p0_di_msAANRNzCGO_msAANRNzPjC_zMGyNvd1haA7" 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;(289,293&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;(273,979&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_iTI_pp0p0_mtAANRNzPjC_zUgrRJlWSYHf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; 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;9,449,857&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;7,129,329&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="AsOf2022-12-31" decimals="0" unitRef="USD">9739150</us-gaap:AccountsReceivableGross>
    <us-gaap:AccountsReceivableGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7403308</us-gaap:AccountsReceivableGross>
    <us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">289293</us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables>
    <us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">273979</us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables>
    <us-gaap:AccountsAndNotesReceivableNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">9449857</us-gaap:AccountsAndNotesReceivableNet>
    <us-gaap:AccountsAndNotesReceivableNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7129329</us-gaap:AccountsAndNotesReceivableNet>
    <us-gaap:InventoryDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_807_eus-gaap--InventoryDisclosureTextBlock_zgHNBrVWiZo4" style="font: 10pt Times New Roman, Times, Serif; margin: 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_820_zkxCnVkensYc" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;INVENTORIES&lt;/span&gt;&lt;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_890_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zIoUdUc2KOJ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BC_zilafhaBzqWi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;SCHEDULE
OF INVENTORY&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_494_20221231_zpOxREueT87a" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20211231_zFULKKzCkJI7" 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;/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_404_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_maINzkLt_z3J51jildvJf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;3,806,646&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;3,417,829&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--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_maINzkLt_zMIqCcIWksH2" style="vertical-align: bottom; background-color: White"&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;10,612,784&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;6,084,176&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_mtINzkLt_zxS9n61hmpb9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total
    inventory&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;14,419,430&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;9,502,005&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_zE5Zj2Q9YSnb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;
</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_890_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_zIoUdUc2KOJ6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BC_zilafhaBzqWi" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;SCHEDULE
OF INVENTORY&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_494_20221231_zpOxREueT87a" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20211231_zFULKKzCkJI7" 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;/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_404_eus-gaap--InventoryFinishedGoods_iI_pp0p0_maINzDiN_maINzkLt_z3J51jildvJf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;3,806,646&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;3,417,829&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--InventoryRawMaterialsAndSupplies_iI_pp0p0_maINzDiN_maINzkLt_zMIqCcIWksH2" style="vertical-align: bottom; background-color: White"&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;10,612,784&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;6,084,176&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_mtINzkLt_zxS9n61hmpb9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total
    inventory&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;14,419,430&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;9,502,005&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="AsOf2022-12-31" decimals="0" unitRef="USD">3806646</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">3417829</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryRawMaterialsAndSupplies contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">10612784</us-gaap:InventoryRawMaterialsAndSupplies>
    <us-gaap:InventoryRawMaterialsAndSupplies contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">6084176</us-gaap:InventoryRawMaterialsAndSupplies>
    <us-gaap:InventoryNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">14419430</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">9502005</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80E_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_z2UYtFfUbSD5" style="font: 10pt Times New Roman, Times, Serif; margin: 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;&lt;span&gt;Property, Equipment and Leaseholds &lt;span style="font: small-caps 10pt Times New Roman, Times, Serif; display: none"&gt;&lt;b&gt;&lt;span id="xdx_829_zXHjYVcu0lwa"&gt;PROPERTY,
PLANT &amp;amp; EQUIPMENT&lt;/span&gt;&lt;/b&gt;&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_zAIBDiMBAgve" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zWIKVDqGZY2d" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;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" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentGross_iI_zWCIGsgTOmhc" style="text-align: center"&gt;2022&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_487_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_zi7gF1xWQe59" 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" id="xdx_481_eus-gaap--PropertyPlantAndEquipmentNet_iI_zRWFa8F88ICk" style="text-align: center"&gt;2022&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 id="xdx_41A_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zCWhLlFY4rll" 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 style="width: 14%; text-align: right"&gt;8,775,629&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,310,920&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,464,709&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_414_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zOkvXmjkLui9" 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 style="text-align: right"&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 style="text-align: right"&gt;107,055&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;89,200&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zU6sAHYNlCQ" 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 style="text-align: right"&gt;43,432&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;42,663&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;769&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41D_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zieXsgtyzHy8" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&gt;133,280&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;112,782&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;20,498&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_410_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHYL0hDWPrLe" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&gt;8,634,063&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;4,891,736&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,742,327&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDGqI3u5ilgh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Trailers&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;8,857&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;7,592&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,265&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41F_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zQm1Nk7ArgH7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&gt;27,907&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;6,493&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_418_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zTfQFn9mS3Yk" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0843"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_412_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zTaf8Ekx3f3l" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&gt;100,860&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;100,860&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl0846"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41B_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zTExOTaW9TB5" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;384,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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0848"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;384,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: 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;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231_z308nsRf9g4l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;18,399,675&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_98A_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20221231_z2lYeZlsD60h" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;8,690,387&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_iI_c20221231_zPsFc33YTw33" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, plant and equipment, net, total"&gt;9,709,288&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"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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" id="xdx_485_eus-gaap--PropertyPlantAndEquipmentGross_iI_zcY6qmJKnMx2" 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" id="xdx_482_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_z0ABppyZ7Ce9" 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" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentNet_iI_zY6M8BveDuj9" 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 id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zxTx0PfHaq23" 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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 id="xdx_411_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zoUtZRMclXb8" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;124,997&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z4mbAZ1ZGCfa" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;1,149&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_416_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_z3acbxnX0Ok3" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&gt;132,530&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;107,256&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;25,274&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_419_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHEretU9iWSg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;2,696,100&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_412_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zpeGtUeNODk6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Trailers&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;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 style="text-align: right"&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 style="text-align: right"&gt;1,931&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41A_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zBmIoeXCRva2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;8,116&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_410_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zNZ25CQ3wzv6" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0879"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zbUWCBEDB1dl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0882"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zBrHzBx3d7Z4" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0884"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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: 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;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20211231_z6Q3QgstkiHl" 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_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20211231_zMLf7YF5ImYk" 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_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_c20211231_zauqqEkkXNuh" 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 id="xdx_8A0_zuazo0KGY68i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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; text-align: justify; margin: 0pt; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Amount
of depreciation expense for 2022: $&lt;span id="xdx_907_eus-gaap--Depreciation_pp0p0_c20220101__20221231_zlkLLew0qkE2" title="Depreciation"&gt;1,103,732&lt;/span&gt; (2021 - $&lt;span id="xdx_909_eus-gaap--Depreciation_pp0p0_c20210101__20211231_zEpq0hmR1Urj" title="Depreciation"&gt;773,497&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; 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; 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_905_eus-gaap--AreaOfLand_iI_usqft_c20210331_zb4AI0UvGLhb" 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_90B_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zCrBp0v2Yb6a" title="Proceed for disposal"&gt;263,380&lt;/span&gt;
($&lt;span id="xdx_901_eus-gaap--ProceedsFromSaleOfMachineryAndEquipment_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zqDRPPr9JDs1"&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_zuCI6FDeZusf" 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_ziVkpa5BoC2" title="Cost"&gt;278,040&lt;/span&gt;CAD) the Company recognized a gain of $&lt;span id="xdx_90E_eus-gaap--GainLossOnDispositionOfAssets1_pp0p0_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zODB5SWYTDU9" title="Recognized gains"&gt;44,330&lt;/span&gt; ($&lt;span id="xdx_905_eus-gaap--GainLossOnDispositionOfAssets1_pp0p0_uCAD_c20210101__20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zLjGWanJFmUh"&gt;55,859&lt;/span&gt;CAD) on the disposal.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_891_eus-gaap--PropertyPlantAndEquipmentTextBlock_zAIBDiMBAgve" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zWIKVDqGZY2d" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;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" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentGross_iI_zWCIGsgTOmhc" style="text-align: center"&gt;2022&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_487_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_zi7gF1xWQe59" 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" id="xdx_481_eus-gaap--PropertyPlantAndEquipmentNet_iI_zRWFa8F88ICk" style="text-align: center"&gt;2022&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 id="xdx_41A_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zCWhLlFY4rll" 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 style="width: 14%; text-align: right"&gt;8,775,629&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,310,920&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,464,709&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_414_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zOkvXmjkLui9" 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 style="text-align: right"&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 style="text-align: right"&gt;107,055&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;89,200&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_zU6sAHYNlCQ" 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 style="text-align: right"&gt;43,432&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;42,663&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;769&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41D_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zieXsgtyzHy8" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&gt;133,280&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;112,782&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;20,498&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_410_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHYL0hDWPrLe" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&gt;8,634,063&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;4,891,736&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,742,327&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_419_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zDGqI3u5ilgh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Trailers&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;8,857&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;7,592&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,265&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41F_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zQm1Nk7ArgH7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&gt;27,907&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;6,493&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_418_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zTfQFn9mS3Yk" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0843"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_412_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zTaf8Ekx3f3l" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&gt;100,860&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;100,860&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl0846"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41B_20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zTExOTaW9TB5" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;384,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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0848"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;384,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: 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;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20221231_z308nsRf9g4l" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cost"&gt;18,399,675&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_98A_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20221231_z2lYeZlsD60h" style="border-bottom: Black 1.5pt solid; text-align: right" title="Accumulated Depreciation"&gt;8,690,387&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_iI_c20221231_zPsFc33YTw33" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, plant and equipment, net, total"&gt;9,709,288&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"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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" id="xdx_485_eus-gaap--PropertyPlantAndEquipmentGross_iI_zcY6qmJKnMx2" 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" id="xdx_482_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_z0ABppyZ7Ce9" 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" id="xdx_48C_eus-gaap--PropertyPlantAndEquipmentNet_iI_zY6M8BveDuj9" 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 id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--BuildingAndBuildingImprovementsMember_zxTx0PfHaq23" 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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 id="xdx_411_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--AutomobilesMember_zoUtZRMclXb8" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;124,997&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_417_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--ComputerEquipmentMember_z4mbAZ1ZGCfa" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;1,149&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_416_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_z3acbxnX0Ok3" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&gt;132,530&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;107,256&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;25,274&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_419_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--MachineryAndEquipmentMember_zHEretU9iWSg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;2,696,100&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_412_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--TrailerMember_zpeGtUeNODk6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Trailers&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;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 style="text-align: right"&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 style="text-align: right"&gt;1,931&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_41A_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__custom--BoatMember_zBmIoeXCRva2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;8,116&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_410_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zNZ25CQ3wzv6" style="vertical-align: bottom; background-color: White"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0879"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--DevelopedTechnologyRightsMember_zbUWCBEDB1dl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0882"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_418_20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LandMember_zBrHzBx3d7Z4" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0884"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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: 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;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--PropertyPlantAndEquipmentGross_iI_c20211231_z6Q3QgstkiHl" 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_989_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iI_c20211231_zMLf7YF5ImYk" 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_98E_eus-gaap--PropertyPlantAndEquipmentNet_iI_c20211231_zauqqEkkXNuh" 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;

</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember"
      decimals="0"
      unitRef="USD">8775629</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember"
      decimals="0"
      unitRef="USD">3310920</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_BuildingAndBuildingImprovementsMember"
      decimals="0"
      unitRef="USD">5464709</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">196255</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">107055</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_AutomobilesMember"
      decimals="0"
      unitRef="USD">89200</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">43432</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">42663</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_ComputerEquipmentMember"
      decimals="0"
      unitRef="USD">769</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">133280</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">112782</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">20498</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">8634063</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">4891736</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_MachineryAndEquipmentMember"
      decimals="0"
      unitRef="USD">3742327</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">8857</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">7592</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_custom_TrailerMember"
      decimals="0"
      unitRef="USD">1265</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">34400</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">27907</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_custom_BoatMember"
      decimals="0"
      unitRef="USD">6493</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">88872</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">88872</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_DevelopedTechnologyRightsMember"
      decimals="0"
      unitRef="USD">100860</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_DevelopedTechnologyRightsMember"
      decimals="0"
      unitRef="USD">100860</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_LandMember"
      decimals="0"
      unitRef="USD">384027</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2022-12-31_us-gaap_LandMember"
      decimals="0"
      unitRef="USD">384027</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">18399675</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">8690387</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">9709288</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember"
      decimals="0"
      unitRef="USD">4823708</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember"
      decimals="0"
      unitRef="USD">2983589</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_BuildingAndBuildingImprovementsMember"
      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_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">132530</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">107256</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">25274</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:Depreciation
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1103732</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">773497</us-gaap:Depreciation>
    <us-gaap:AreaOfLand contextRef="AsOf2021-03-31" 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>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">44330</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2021-01-012021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="CAD">55859</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_800_eus-gaap--IntangibleAssetsDisclosureTextBlock_znkjLaBcpor6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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;span id="xdx_825_zrTZKxGdRuze" style="display: none; font-family: Times New Roman, Times, Serif"&gt;PATENTS&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_895_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zzvrLwZgwhT3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span id="xdx_8B8_zxK14KCMvErj" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;SCHEDULE OF PATENTS&lt;/span&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; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2022&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2022&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_988_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20221231_z0q6dzd0VTZg" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, cost"&gt;195,725&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_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_z0tX8HePGAp7" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated amortization"&gt;195,725&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_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20221231_zfYJXMACyTz2" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0917"&gt;-&lt;/span&gt;&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; 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; 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; 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; 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; 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_98B_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zkn2b2EVDoh8" 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_98B_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_zgaMj03jDWS1" 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_980_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zY1rnrZss2Hl" 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 id="xdx_8AA_zcAkhQu5URAl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Decrease
in 2022 cost was due to currency conversion. The cost as of December 31, 2022 in Canadian dollars is $&lt;span id="xdx_90C_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20221231_zkRGXOYOzlq" title="Increase in currency conversion"&gt;265,102&lt;/span&gt; (2021 - $&lt;span id="xdx_90E_ecustom--IncreaseInCurrencyConversion_iI_pp0p0_uCAD_c20211231_zbdVg7Xh6Nnc" title="Increase in currency conversion"&gt;265,102&lt;/span&gt; CAD).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 2022 was $&lt;span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--PatentsMember_zfdnf2UEsaJb" title="Amortization of intangible assets"&gt;13,699&lt;/span&gt; (2021 - $&lt;span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--PatentsMember_z097jfbVwX49" title="Amortization of intangible assets"&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; 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:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_895_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zzvrLwZgwhT3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span id="xdx_8B8_zxK14KCMvErj" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;SCHEDULE OF PATENTS&lt;/span&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; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2022&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: center"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;2022&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_988_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20221231_z0q6dzd0VTZg" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Patents, cost"&gt;195,725&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_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_z0tX8HePGAp7" style="border-bottom: Black 1.5pt solid; width: 14%; text-align: right" title="Accumulated amortization"&gt;195,725&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_982_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20221231_zfYJXMACyTz2" style="border-bottom: Black 1.5pt solid; width: 14%; font-variant: small-caps; text-align: right" title="Patents, Net"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0917"&gt;-&lt;/span&gt;&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; 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; 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; 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; 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; 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_98B_eus-gaap--FiniteLivedPatentsGross_iI_pp0p0_c20211231_zkn2b2EVDoh8" 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_98B_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20211231_zgaMj03jDWS1" 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_980_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pp0p0_c20211231_zY1rnrZss2Hl" 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;

</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedPatentsGross contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">195725</us-gaap:FiniteLivedPatentsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">195725</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <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>
    <FSI:IncreaseInCurrencyConversion contextRef="AsOf2022-12-31" decimals="0" unitRef="CAD">265102</FSI:IncreaseInCurrencyConversion>
    <FSI:IncreaseInCurrencyConversion contextRef="AsOf2021-12-31" decimals="0" unitRef="CAD">265102</FSI:IncreaseInCurrencyConversion>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2022-01-012022-12-31_us-gaap_PatentsMember84249640"
      decimals="0"
      unitRef="USD">13699</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2021-01-012021-12-31_us-gaap_PatentsMember"
      decimals="0"
      unitRef="USD">16438</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_801_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zNTYnlrUvc69" style="font: 10pt Times New Roman, Times, Serif; margin: 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;/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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span style="font-variant: small-caps"&gt;&lt;span&gt;&#160;&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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span style="font-variant: small-caps"&gt;&lt;span&gt;&lt;span id="xdx_829_zrWlCQuthC1f" style="font: small-caps 10pt Times New Roman, Times, Serif; display: none"&gt;&lt;b&gt;GOODWILL
AND INTANGIBLE ASSETS&lt;/b&gt;&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--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zbrYiNcCBuO8" style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_z5ulJQC246u1"&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: 80%; padding-bottom: 1.5pt"&gt;Balance as of December 31, 2021 and 2022&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: 16%; text-align: right"&gt;&lt;span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zKZkeDfDjVq3" title="Goodwill"&gt;&lt;span id="xdx_90C_eus-gaap--Goodwill_iI_c20221231_zXv5UuxHigM6"&gt;2,534,275&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, 2021 and 2022&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_905_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_z5VzZGQZvtF9" title="Indefinite lived intangible assets, ending balance"&gt;&lt;span id="xdx_901_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20221231_zMQhyANSjs33"&gt;770,000&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"&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; 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; 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: 80%"&gt;Balance as of December 31, 2020&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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zaeM2pOh62j" style="width: 16%; text-align: right" title="Indefinite lived intangible assets, beginning balance"&gt;2,006,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_984_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zq40bQbXRVmd" 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, 2021&lt;/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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zvqVdHmFjL03" style="text-align: right" title="Indefinite lived intangible assets, beginning balance"&gt;1,830,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_980_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zZv6U1ytREy2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization"&gt;(160,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, 2022&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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zVBEeoIhBZjh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Indefinite lived intangible assets, ending balance"&gt;1,670,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_8AE_zaqmXazOMWgc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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"&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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Definite
lived intangible assets consist of customer relationships and software 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; 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_891_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zmXqIIEewY3d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_8BF_zYUNT0na5iQh" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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: 80%; text-align: justify"&gt;2023&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;&lt;span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zIDiF5aFT98b" title="2023"&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;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_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zTKg1CyNbkP4" 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: rgb(204,238,255)"&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_981_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z5A0FkAzpZAi" 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: White"&gt;
    &lt;td style="text-align: justify"&gt;2026&lt;/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--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zoS6GWjrU7Sh" style="text-align: right" title="2026"&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;2027&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--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z7ovJ3uJ5AOd" style="border-bottom: Black 1.5pt solid; text-align: right" title="2027"&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_8A3_zoA2gOTiAmug" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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="From2022-01-01to2022-12-31">&lt;p id="xdx_891_eus-gaap--ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock_zbrYiNcCBuO8" style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_z5ulJQC246u1"&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: 80%; padding-bottom: 1.5pt"&gt;Balance as of December 31, 2021 and 2022&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: 16%; text-align: right"&gt;&lt;span id="xdx_90C_eus-gaap--Goodwill_iI_c20211231_zKZkeDfDjVq3" title="Goodwill"&gt;&lt;span id="xdx_90C_eus-gaap--Goodwill_iI_c20221231_zXv5UuxHigM6"&gt;2,534,275&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, 2021 and 2022&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_905_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20211231_z5VzZGQZvtF9" title="Indefinite lived intangible assets, ending balance"&gt;&lt;span id="xdx_901_eus-gaap--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iI_c20221231_zMQhyANSjs33"&gt;770,000&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"&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; 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; 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: 80%"&gt;Balance as of December 31, 2020&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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zaeM2pOh62j" style="width: 16%; text-align: right" title="Indefinite lived intangible assets, beginning balance"&gt;2,006,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_984_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zq40bQbXRVmd" 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, 2021&lt;/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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zvqVdHmFjL03" style="text-align: right" title="Indefinite lived intangible assets, beginning balance"&gt;1,830,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_980_eus-gaap--AmortizationOfIntangibleAssets_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zZv6U1ytREy2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Amortization"&gt;(160,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, 2022&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--IndefiniteLivedIntangibleAssetsExcludingGoodwill_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--EnPInvestmentsCorporationLLCMember_zVBEeoIhBZjh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Indefinite lived intangible assets, ending balance"&gt;1,670,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="AsOf2021-12-31" decimals="0" unitRef="USD">2534275</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="AsOf2022-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="AsOf2022-12-31" decimals="0" unitRef="USD">770000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="AsOf2020-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">2006000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2021-01-012021-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">-176000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="AsOf2021-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">1830000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2022-01-012022-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">-160000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="AsOf2022-12-31_custom_EnPInvestmentsCorporationLLCMember"
      decimals="0"
      unitRef="USD">1670000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_891_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zmXqIIEewY3d" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_8BF_zYUNT0na5iQh" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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: 80%; text-align: justify"&gt;2023&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;&lt;span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zIDiF5aFT98b" title="2023"&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;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_98A_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zTKg1CyNbkP4" 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: rgb(204,238,255)"&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_981_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z5A0FkAzpZAi" 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: White"&gt;
    &lt;td style="text-align: justify"&gt;2026&lt;/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--FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_zoS6GWjrU7Sh" style="text-align: right" title="2026"&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;2027&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--FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_iI_pp0p0_c20221231__us-gaap--FairValueByAssetClassAxis__us-gaap--FiniteLivedIntangibleAssetsMember_z7ovJ3uJ5AOd" style="border-bottom: Black 1.5pt solid; text-align: right" title="2027"&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;

</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="AsOf2022-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="AsOf2022-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="AsOf2022-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="AsOf2022-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="AsOf2022-12-31_us-gaap_FiniteLivedIntangibleAssetsMember"
      decimals="0"
      unitRef="USD">160000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <FSI:LongTermDepositsTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_808_ecustom--LongTermDepositsTextBlock_z4yVgoLnhJxk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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;&lt;span&gt;&lt;span&gt;Long Term Deposits&lt;/span&gt;&lt;/span&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; 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; display: none; margin: 0pt; text-align: justify"&gt;&lt;span id="xdx_821_z4XUKhvnSzQg"&gt;LONG TERM DEPOSITS&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_895_ecustom--ScheduleOfLongTermDepositsTableTextBlock_zBsSm6lhatKa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_8BA_zKgl9BZFWcI3" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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_49D_20221231_z9XYevAT68x5" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_49E_20211231_z7MuIDEwsiDa" 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;/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="padding-bottom: 1.5pt; text-align: center"&gt;&#160;&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="padding-bottom: 1.5pt; 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 id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 1.5pt"&gt;Long term deposits&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: 16%; text-align: right"&gt;8,540&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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"&gt;8,540&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p id="xdx_8A4_zeOZDYHgghtk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
</FSI:LongTermDepositsTextBlock>
    <FSI:ScheduleOfLongTermDepositsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_895_ecustom--ScheduleOfLongTermDepositsTableTextBlock_zBsSm6lhatKa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_8BA_zKgl9BZFWcI3" style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&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_49D_20221231_z9XYevAT68x5" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_49E_20211231_z7MuIDEwsiDa" 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;/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="padding-bottom: 1.5pt; text-align: center"&gt;&#160;&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="padding-bottom: 1.5pt; 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 id="xdx_409_eus-gaap--DepositsAssetsNoncurrent_iI_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 1.5pt"&gt;Long term deposits&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: 16%; text-align: right"&gt;8,540&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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"&gt;8,540&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
</FSI:ScheduleOfLongTermDepositsTableTextBlock>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:DepositsAssetsNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">8540</us-gaap:DepositsAssetsNoncurrent>
    <us-gaap:EquityMethodInvestmentsDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80D_eus-gaap--EquityMethodInvestmentsDisclosureTextBlock_zxtPhDd3osD2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_826_z7PlF420Ywia"&gt;INVESTMENTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 previously held a &lt;span id="xdx_907_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpPeruInvestmentsLlcMember_z7M4k4sVIMAi" title="Ownership interest"&gt;50&lt;/span&gt;% ownership interest in ENP Peru, split between NanoChem (&lt;span id="xdx_90F_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--NanoChemMember_z4mejyCp0X2a" title="Ownership percentage"&gt;41.67&lt;/span&gt;%) and ENP Investments (&lt;span id="xdx_90D_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpInvestmentsLLCMember_zCpO7Qy09Xp3" title="Equity method investment ownership percentage"&gt;8.33&lt;/span&gt;%), which was
acquired in fiscal 2016. ENP Peru is located in Illinois and leases warehouse space. In June 2022, NanoChem acquired an additional
&lt;span id="xdx_90A_ecustom--AdditionalEquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--NanoChemMember_zkGbvGvvWk1f" title="Additional ownership interest"&gt;50&lt;/span&gt;% ownership interest at a cost of $&lt;span id="xdx_901_ecustom--RemainningShareOutstanding_c20220101__20221231__srt--OwnershipAxis__custom--EnpPeruMember_zup04BX3caT" title="Remainning share outstanding"&gt;506,659&lt;/span&gt; paid through a new $&lt;span id="xdx_90A_eus-gaap--Cash_iI_c20221231__srt--OwnershipAxis__custom--EnpPeruMember_zBu0tlkLxaU8" title="cash"&gt;259,000&lt;/span&gt; mortgage and cash on hand. The &lt;span id="xdx_907_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zlAIHUcgjnid" title="Minority Interest Ownership Percentage"&gt;35&lt;/span&gt;% non-controlling interest
of the &lt;span id="xdx_90C_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20221231__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--EnpInvestmentsLLCMember_z4NhTiOK5chi" title="Equity method investment ownership percentage"&gt;8.33&lt;/span&gt;% owned by ENP Investments is included in non-controlling interest in these consolidated financial statements. The
Company&#x2019;s investment in ENP Peru was previously accounted for using the equity method, however, is now consolidated into the
consolidated financial statements from the date control was obtained.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;It
was determined that ENP Peru did not meet the definition of a business in accordance with FASB Codification Topic 805, &lt;i&gt;Business
Combinations &lt;/i&gt;(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 Peru as of the acquisition date. &lt;/span&gt;The gain on acquisition of ENP Peru represents a gain on remeasurement of
the Company&#x2019;s equity method investment immediately prior to the acquisition date.&lt;/p&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zX6cbLFtnKDe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span style="display: none"&gt;&lt;span id="xdx_8BA_z3rK1lX9knB6"&gt;SCHEDULE
OF  FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED&lt;/span&gt;&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="display: none; 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_20220101__20221231_zSQUvD4v4mLl" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--BusinessCombinationConsiderationTransferred1_z5Yz0mGjSh1l" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left; padding-bottom: 1.5pt"&gt;Purchase consideration&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: 16%; text-align: right"&gt;506,659&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 id="xdx_40A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iE_zRKjVmaEjkla" 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 style="text-align: right"&gt;7,330&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iE_zqW2bjeKwDr9" 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 style="text-align: right"&gt;3,750,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iE_zKdVDrGcsYZc" 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 style="text-align: right"&gt;150,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 id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNE_di_zDCvuxzhBmRc" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Deferred tax 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;(174,582&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_iE_zS4Dc7t7YCYg" 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;Long term debt&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,849,500&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iE_zALzdPO8ys64" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;883,248&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_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_iE_zINPPWTb6B08" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Excess of assets acquired over consideration&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;376,589&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_ecustom--InvestmentEliminatedUponConsolidation_zoTIrQXaD8jk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Less investment eliminated upon consolidation&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;(41,538&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_ecustom--GainOnAcquisitionOfSubsidiary_zlDiwZHC5B3b" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain on acquisition of ENP Peru&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;335,051&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_8A3_zn2RFLVQoar6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zIqugyKIQgnc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.7in"&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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span style="display: none"&gt;&lt;span id="xdx_8B5_zewEUz3CJgue"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&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: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_902_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zB3CB8AKKjCi" title="Balance, Beginning"&gt;3,822&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_983_ecustom--EquityMethodInvestmentReturnOfEquity_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zNmJPMjn6ABe" 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: 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_982_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zA4Td4LWwNal" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain 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: White"&gt;
    &lt;td&gt;Balance, December 31, 2021&lt;/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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z6zwz0rtTc4k" style="text-align: right" title="Balance, Beginning"&gt;22,642&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_98F_ecustom--EquityMethodInvestmentReturnOfEquity_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zsYQzKt3k7B6" style="text-align: right" title="Return of equity"&gt;(8,750&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;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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z5tunoBA2Wwe" style="text-align: right" title="Gain in equity method investment"&gt;27,646&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;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_988_ecustom--InvestmentEliminatedUponConsolidation_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zQYO2nCQYykl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation"&gt;(41,538&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, June 30 and December 31, 2022&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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zbgFRVVu3nVb" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1028"&gt;-&lt;/span&gt;&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_8A5_z5rRaS3LMi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p id="xdx_89B_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zlizCmMgIrk5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Summarized
profit and loss information related to the equity accounted investment is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span style="display: none"&gt;&lt;span id="xdx_8BD_z3IeGPjwTig8"&gt;SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT&lt;/span&gt;&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: 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" id="xdx_491_20220101__20220630__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zTALQTJC7sz7" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Six months ended &lt;br/&gt; June 30, 2022&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_20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z9MfWvtc0Zf6" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Year ended &lt;br/&gt; December 31, 2021&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 id="xdx_400_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zdIpjC1Jux9c" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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 style="width: 16%; text-align: right"&gt;162,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: 16%; text-align: right"&gt;322,079&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;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"/&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;&#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_404_ecustom--RealizedInvestmentGainsLossesNet_zp4rJOPGPP5j" 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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;55,292&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;45,285&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A4_zC0s89wcMkN2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
December 2018 the Company invested $&lt;span id="xdx_90B_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--AppliedHoldingCorpMember_zYjtGLvajH9c" 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 2021 but may be extended with notice for a maximum of two years. During the
year ended December 31, 2021, the Company entered an agreement with Applied to extend the maturity date of this promissory note to
&lt;span id="xdx_90C_eus-gaap--DebtInstrumentMaturityDate_dd_c20210101__20211231_z34NZ0p8L3K1" title="Debt maturity date"&gt;December 6, 2023&lt;/span&gt;. In accordance with FASB Codification Topic 323, &lt;i&gt;Investments &#x2013; Equity Method and Joint Ventures&lt;/i&gt; (ASC
323), 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; 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; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;(&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;c&lt;span style="font-variant: small-caps"&gt;)
&lt;/span&gt;&lt;/b&gt;In December 2018 the Company invested $&lt;span id="xdx_908_eus-gaap--InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease_c20181201__20181231__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_z9nMV8tKtI9d" 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_902_eus-gaap--StockIssuedDuringPeriodSharesNewIssues_pid_c20181201__20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_zzbF5HEX7sZ9" title="Common stock issued, shares"&gt;50,000&lt;/span&gt; non-voting Class B shares at $&lt;span id="xdx_90E_eus-gaap--SharePrice_iI_pid_c20181231__us-gaap--StatementClassOfStockAxis__us-gaap--CommonClassBMember__dei--LegalEntityAxis__custom--TrioOpportunityCorpMember_zjW4RMgca8ic" 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"&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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;d) &lt;/b&gt;In
January 2019, the Company invested 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_908_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20190131__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--FloridaBasedLLCMember_zkjYl7mzizT9" title="Ownership percentage"&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 style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="background-color: white"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_895_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zCmzUSq8q0E6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B2_zJi7XAK6QsRg" 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: 85%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zLrCbVhMh1j5" title="Balance, Beginning"&gt;3,572,345&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;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_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z06NYLPrQHmg" style="text-align: right" title="Gain (loss) 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_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zMN3D1pDHRY" 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&gt;Balance, December 31, 2021&lt;/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--EquityMethodInvestments_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8ojLyzsVACi" style="text-align: right" title="Balance, Beginning"&gt;3,701,368&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_980_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zP9MvKl3IF6e" style="text-align: right" title="Gain (loss) in equity method investment"&gt;307,527&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_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqq628UNx0wc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity"&gt;(250,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: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2022&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_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrSxR8hLzQFd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Balance, Ending"&gt;3,758,895&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_zf4ZkasQvIQh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zJEodwGYEjDg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Summarized
profit and loss information related to the equity accounted investment is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B2_zKKN1pJiKd59" 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" id="xdx_497_20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zYKqfT1o8Oki" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_495_20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zpzbmcsHYlo7" 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;/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 id="xdx_402_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zkrWkJ3kpxte" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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 style="width: 16%; text-align: right"&gt;18,103,070&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;11,543,277&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--RealizedInvestmentGainsLosses_zmisjQAmqTLi" 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 style="text-align: right"&gt;4,204,311&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,517,387&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_ecustom--RealizedInvestmentGainsLossesNet_z3TOwU1Z5445" 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 style="text-align: right"&gt;615,055&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;908,045&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_ziJwkGcxMXp" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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; 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, 2022, the Company had sales of $&lt;span id="xdx_909_eus-gaap--RevenueFromRelatedParties_c20220101__20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zKEZpZxQVQxc" title="Sales"&gt;12,938,735&lt;/span&gt; (2021 - $&lt;span id="xdx_908_eus-gaap--RevenueFromRelatedParties_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zK2lWAYo6v0f" title="Sales"&gt;7,982,281&lt;/span&gt;) to the Florida Based LLC, of which $&lt;span id="xdx_90E_eus-gaap--AccountsReceivableRelatedParties_iI_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zipjPwL38yR3" title="Accounts receivable related parties"&gt;2,423,285&lt;/span&gt;
is included within Accounts Receivable as at December 31, 2022 (2021 - $&lt;span id="xdx_900_eus-gaap--AccountsReceivableRelatedParties_iI_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FloridaBasedLLCMember_zIK3DP0r3Y1k" title="Accounts receivable related parties"&gt;2,202,345&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_90B_eus-gaap--PaymentsToAcquireInvestments_pp0p0_c20201201__20201231__dei--LegalEntityAxis__custom--LygosIncMember_zIHyXm5c6Wdk"&gt;500,000&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;in
Lygos Inc. (&#x201c;Lygos&#x201d;), a privately held entity, under a Simple Agreement for Future Equity (&#x201c;SAFE&#x201d;)
agreement. Lygos is a company developing a sustainable aspartic acid microbe strain. In 2021, the Company made a second SAFE
investment of $&lt;span id="xdx_906_eus-gaap--PaymentsToAcquireInvestments_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_ziYwfqJlU4ba"&gt;500,000&lt;/span&gt;.&lt;/span&gt; &lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;T&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&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 style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zZZl4WPs7Yhd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_zl6Amg4fNlp8" 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: 85%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zPqcyCUb8Fne" title="Balance, Beginning"&gt;500,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: left; padding-bottom: 1.5pt"&gt;Additional 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span id="xdx_908_ecustom--AdditionalPaymentInvestment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zgienAi9gmx9" title="Additional payment investment"&gt;500,000&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="padding-bottom: 1.5pt"&gt;Balance, December 31, 2021 and December 31, 2022&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_90D_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_z4FCW8waCDg1" title="Balance, Ending"&gt;1,000,000&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_8A3_zMUeIDUguaL1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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"&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; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b/&gt;&lt;/span&gt;&lt;/p&gt;
</us-gaap:EquityMethodInvestmentsDisclosureTextBlock>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2022-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.50</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2022-12-31_custom_NanoChemMember"
      decimals="INF"
      unitRef="Pure">0.4167</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2022-12-31_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.0833</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <FSI:AdditionalEquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2022-12-31_custom_NanoChemMember"
      decimals="INF"
      unitRef="Pure">0.50</FSI:AdditionalEquityMethodInvestmentOwnershipPercentage>
    <FSI:RemainningShareOutstanding
      contextRef="From2022-01-012022-12-31_custom_EnpPeruMember"
      decimals="0"
      unitRef="USD">506659</FSI:RemainningShareOutstanding>
    <us-gaap:Cash
      contextRef="AsOf2022-12-31_custom_EnpPeruMember"
      decimals="0"
      unitRef="USD">259000</us-gaap:Cash>
    <us-gaap:MinorityInterestOwnershipPercentageByParent
      contextRef="AsOf2022-12-31_custom_EnpnvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.35</us-gaap:MinorityInterestOwnershipPercentageByParent>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2022-12-31_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.0833</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember">&lt;p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zX6cbLFtnKDe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span style="display: none"&gt;&lt;span id="xdx_8BA_z3rK1lX9knB6"&gt;SCHEDULE
OF  FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED&lt;/span&gt;&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="display: none; 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_20220101__20221231_zSQUvD4v4mLl" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--BusinessCombinationConsiderationTransferred1_z5Yz0mGjSh1l" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left; padding-bottom: 1.5pt"&gt;Purchase consideration&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: 16%; text-align: right"&gt;506,659&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 id="xdx_40A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iE_zRKjVmaEjkla" 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 style="text-align: right"&gt;7,330&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings_iE_zqW2bjeKwDr9" 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 style="text-align: right"&gt;3,750,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iE_zKdVDrGcsYZc" 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 style="text-align: right"&gt;150,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 id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNE_di_zDCvuxzhBmRc" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Deferred tax 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;(174,582&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt_iE_zS4Dc7t7YCYg" 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;Long term debt&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,849,500&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iE_zALzdPO8ys64" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;883,248&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_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice_iE_zINPPWTb6B08" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Excess of assets acquired over consideration&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;376,589&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_ecustom--InvestmentEliminatedUponConsolidation_zoTIrQXaD8jk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Less investment eliminated upon consolidation&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;(41,538&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_ecustom--GainOnAcquisitionOfSubsidiary_zlDiwZHC5B3b" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gain on acquisition of ENP Peru&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;335,051&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:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">506659</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">7330</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3750000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">150000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">174582</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <FSI:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">-2849500</FSI:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">883248</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets>
    <FSI:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">376589</FSI:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice>
    <FSI:InvestmentEliminatedUponConsolidation
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-41538</FSI:InvestmentEliminatedUponConsolidation>
    <FSI:GainOnAcquisitionOfSubsidiary
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">335051</FSI:GainOnAcquisitionOfSubsidiary>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember">&lt;p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zIqugyKIQgnc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.7in"&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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span style="display: none"&gt;&lt;span id="xdx_8B5_zewEUz3CJgue"&gt;SCHEDULE OF EQUITY METHOD INVESTMENT&lt;/span&gt;&lt;/span&gt;&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: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_902_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zB3CB8AKKjCi" title="Balance, Beginning"&gt;3,822&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_983_ecustom--EquityMethodInvestmentReturnOfEquity_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zNmJPMjn6ABe" 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: 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_982_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zA4Td4LWwNal" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gain 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: White"&gt;
    &lt;td&gt;Balance, December 31, 2021&lt;/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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z6zwz0rtTc4k" style="text-align: right" title="Balance, Beginning"&gt;22,642&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_98F_ecustom--EquityMethodInvestmentReturnOfEquity_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zsYQzKt3k7B6" style="text-align: right" title="Return of equity"&gt;(8,750&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;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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z5tunoBA2Wwe" style="text-align: right" title="Gain in equity method investment"&gt;27,646&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;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_988_ecustom--InvestmentEliminatedUponConsolidation_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zQYO2nCQYykl" style="border-bottom: Black 1.5pt solid; text-align: right" title="Investment eliminated upon consolidation"&gt;(41,538&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, June 30 and December 31, 2022&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_c20220101__20221231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zbgFRVVu3nVb" style="border-bottom: Black 2.5pt double; text-align: right" title="Balance, Ending"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1028"&gt;-&lt;/span&gt;&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="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>
    <FSI:EquityMethodInvestmentReturnOfEquity
      contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">-8750</FSI:EquityMethodInvestmentReturnOfEquity>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal
      contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">27646</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <FSI:InvestmentEliminatedUponConsolidation
      contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">-41538</FSI:InvestmentEliminatedUponConsolidation>
    <us-gaap:GainLossOnInvestmentsTextBlock contextRef="From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember">&lt;p id="xdx_89B_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zlizCmMgIrk5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Summarized
profit and loss information related to the equity accounted investment is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span style="display: none"&gt;&lt;span id="xdx_8BD_z3IeGPjwTig8"&gt;SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT&lt;/span&gt;&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: 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" id="xdx_491_20220101__20220630__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_zTALQTJC7sz7" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Six months ended &lt;br/&gt; June 30, 2022&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_20210101__20211231__dei--LegalEntityAxis__custom--EnpPeruInvestmentsLlcMember_z9MfWvtc0Zf6" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;Year ended &lt;br/&gt; December 31, 2021&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 id="xdx_400_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zdIpjC1Jux9c" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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 style="width: 16%; text-align: right"&gt;162,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: 16%; text-align: right"&gt;322,079&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;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"/&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;&#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_404_ecustom--RealizedInvestmentGainsLossesNet_zp4rJOPGPP5j" 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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;55,292&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;45,285&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="From2022-01-012022-06-30_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">162000</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <us-gaap:GainsLossesOnSalesOfInvestmentRealEstate
      contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">322079</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2022-01-012022-06-30_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">55292</FSI:RealizedInvestmentGainsLossesNet>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2021-01-012021-12-31_custom_EnpPeruInvestmentsLlcMember"
      decimals="0"
      unitRef="USD">45285</FSI:RealizedInvestmentGainsLossesNet>
    <us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease
      contextRef="From2018-12-012018-12-31_custom_AppliedHoldingCorpMember"
      decimals="0"
      unitRef="USD">200000</us-gaap:InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease>
    <us-gaap:DebtInstrumentMaturityDate contextRef="From2021-01-012021-12-31">2023-12-06</us-gaap:DebtInstrumentMaturityDate>
    <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_us-gaap_CommonClassBMember_custom_TrioOpportunityCorpMember"
      decimals="INF"
      unitRef="USDPShares">10.00</us-gaap:SharePrice>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2019-01-31_custom_FloridaBasedLLCMember"
      decimals="INF"
      unitRef="Pure">0.50</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390">&lt;p id="xdx_895_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zCmzUSq8q0E6" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B2_zJi7XAK6QsRg" 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: 85%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zLrCbVhMh1j5" title="Balance, Beginning"&gt;3,572,345&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;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_989_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z06NYLPrQHmg" style="text-align: right" title="Gain (loss) 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_c20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zMN3D1pDHRY" 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&gt;Balance, December 31, 2021&lt;/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--EquityMethodInvestments_iS_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_z8ojLyzsVACi" style="text-align: right" title="Balance, Beginning"&gt;3,701,368&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_980_eus-gaap--EquityMethodInvestmentRealizedGainLossOnDisposal_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zP9MvKl3IF6e" style="text-align: right" title="Gain (loss) in equity method investment"&gt;307,527&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_98C_ecustom--EquityMethodInvestmentReturnOfEquity_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zqq628UNx0wc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Return of equity"&gt;(250,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: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Balance, December 31, 2022&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_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zrSxR8hLzQFd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Balance, Ending"&gt;3,758,895&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="AsOf2020-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">3572345</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703"
      decimals="0"
      unitRef="USD">454023</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <FSI:EquityMethodInvestmentReturnOfEquity
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703"
      decimals="0"
      unitRef="USD">-325000</FSI:EquityMethodInvestmentReturnOfEquity>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember84251718"
      decimals="0"
      unitRef="USD">3701368</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal
      contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390"
      decimals="0"
      unitRef="USD">307527</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <FSI:EquityMethodInvestmentReturnOfEquity
      contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390"
      decimals="0"
      unitRef="USD">-250000</FSI:EquityMethodInvestmentReturnOfEquity>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2022-12-31_custom_FloridaBasedLLCMember84251734"
      decimals="0"
      unitRef="USD">3758895</us-gaap:EquityMethodInvestments>
    <us-gaap:GainLossOnInvestmentsTextBlock contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390">&lt;p id="xdx_890_eus-gaap--GainLossOnInvestmentsTextBlock_hdei--LegalEntityAxis__custom--FloridaBasedLLCMember_zJEodwGYEjDg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Summarized
profit and loss information related to the equity accounted investment is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B2_zKKN1pJiKd59" 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" id="xdx_497_20220101__20221231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zYKqfT1o8Oki" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_495_20210101__20211231__dei--LegalEntityAxis__custom--FloridaBasedLLCMember_zpzbmcsHYlo7" 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;/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 id="xdx_402_eus-gaap--GainsLossesOnSalesOfInvestmentRealEstate_zkrWkJ3kpxte" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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 style="width: 16%; text-align: right"&gt;18,103,070&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;11,543,277&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--RealizedInvestmentGainsLosses_zmisjQAmqTLi" 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 style="text-align: right"&gt;4,204,311&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,517,387&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_ecustom--RealizedInvestmentGainsLossesNet_z3TOwU1Z5445" 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 style="text-align: right"&gt;615,055&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;908,045&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="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390"
      decimals="0"
      unitRef="USD">18103070</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <us-gaap:GainsLossesOnSalesOfInvestmentRealEstate
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703"
      decimals="0"
      unitRef="USD">11543277</us-gaap:GainsLossesOnSalesOfInvestmentRealEstate>
    <us-gaap:RealizedInvestmentGainsLosses
      contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390"
      decimals="0"
      unitRef="USD">4204311</us-gaap:RealizedInvestmentGainsLosses>
    <us-gaap:RealizedInvestmentGainsLosses
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703"
      decimals="0"
      unitRef="USD">3517387</us-gaap:RealizedInvestmentGainsLosses>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember84251390"
      decimals="0"
      unitRef="USD">615055</FSI:RealizedInvestmentGainsLossesNet>
    <FSI:RealizedInvestmentGainsLossesNet
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember84251703"
      decimals="0"
      unitRef="USD">908045</FSI:RealizedInvestmentGainsLossesNet>
    <us-gaap:RevenueFromRelatedParties
      contextRef="From2022-01-012022-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">12938735</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="From2021-01-012021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">7982281</us-gaap:RevenueFromRelatedParties>
    <us-gaap:AccountsReceivableRelatedParties
      contextRef="AsOf2022-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">2423285</us-gaap:AccountsReceivableRelatedParties>
    <us-gaap:AccountsReceivableRelatedParties
      contextRef="AsOf2021-12-31_custom_FloridaBasedLLCMember"
      decimals="0"
      unitRef="USD">2202345</us-gaap:AccountsReceivableRelatedParties>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2020-12-012020-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2021-01-012021-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="From2022-01-012022-12-31_custom_LygosIncMember">&lt;p id="xdx_891_eus-gaap--EquityMethodInvestmentsTextBlock_hdei--LegalEntityAxis__custom--LygosIncMember_zZZl4WPs7Yhd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_zl6Amg4fNlp8" 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: 85%; margin-right: auto"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_90E_eus-gaap--EquityMethodInvestments_iS_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zPqcyCUb8Fne" title="Balance, Beginning"&gt;500,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: left; padding-bottom: 1.5pt"&gt;Additional 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span id="xdx_908_ecustom--AdditionalPaymentInvestment_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_zgienAi9gmx9" title="Additional payment investment"&gt;500,000&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="padding-bottom: 1.5pt"&gt;Balance, December 31, 2021 and December 31, 2022&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_90D_eus-gaap--EquityMethodInvestments_iE_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--LygosIncMember_z4FCW8waCDg1" title="Balance, Ending"&gt;1,000,000&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="AsOf2020-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</us-gaap:EquityMethodInvestments>
    <FSI:AdditionalPaymentInvestment
      contextRef="From2021-01-012021-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">500000</FSI:AdditionalPaymentInvestment>
    <us-gaap:EquityMethodInvestments
      contextRef="AsOf2021-12-31_custom_LygosIncMember"
      decimals="0"
      unitRef="USD">1000000</us-gaap:EquityMethodInvestments>
    <us-gaap:ShortTermDebtTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80B_eus-gaap--ShortTermDebtTextBlock_zB4eL9qIZTkh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify"&gt;&lt;span id="xdx_821_zTHFx2KDdst"&gt;SHORT-TERM LINE OF CREDIT&lt;/span&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; 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
March 2022, ENP Investments signed a new agreement with Midland States Bank (&#x201c;Midland&#x201d;) to renew the credit line. In
June 2022, ENP Investments closed the account. The revolving line of credit was for an aggregate amount up to $&lt;span id="xdx_90B_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUZp1IGJvSz" title="Aggregate amount of revolving line of credit"&gt;4,000,000&lt;/span&gt;.
The interest rate of this loan was 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 was
calculated using a rate of &lt;span id="xdx_90E_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20220301__20220331__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zcJM0194sF82" title="Debt effective rate"&gt;1.000&lt;/span&gt;
percentage points over the Index. Under no circumstances was the interest rate of this loan less than &lt;span id="xdx_90A_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20220331__srt--RangeAxis__srt--MaximumMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z5hd7uAi50Pe" title="Line of credit facility interest rate"&gt;4.25&lt;/span&gt;%
per annum or more than the maximum rate allowed by applicable law. The interest rate at December 31, 2021 was &lt;span id="xdx_903_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z9ebtyLGobyi" title="Annual interest rate of loan"&gt;4.25&lt;/span&gt;%.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 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;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 contained 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 was a guarantor of &lt;span id="xdx_901_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220331__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zRUKdUGr7Or7" title="Loan guaranteed rate"&gt;65&lt;/span&gt;% of all the principal and other loan costs not to exceed
$&lt;span id="xdx_900_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220331__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zqDrs3Yt4U2d" title="Line of Credit"&gt;2,600,000&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 which has now been terminated.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $&lt;span id="xdx_905_eus-gaap--ShortTermBorrowings_iI_dxL_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zKdK00bQKCta" title="Short-term borrowings::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1109"&gt;nil&lt;/span&gt;&lt;/span&gt; (2021 - $&lt;span id="xdx_906_eus-gaap--ShortTermBorrowings_iI_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUuOOy0f7qL5" title="Short-term borrowings"&gt;811,665&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
October 2021, the Company signed a new agreement with Midland to replace the expiring credit line at Harris. In June 2022, the
Company closed the account. The revolving line of credit was for an aggregate amount of up to the lesser of (i) $&lt;span id="xdx_90E_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_ztZDNnTv9UEg" title="Aggregate amount of revolving line of credit"&gt;3,500,000&lt;/span&gt;, or (ii)
&lt;span id="xdx_904_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zMHKyvgnvQok" 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_90F_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20211001__20211031__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zaHHAWh9PMOg" title="Percentage of foreign accounts receivable of inventory"&gt;50&lt;/span&gt;% of inventory. Interest on the unpaid
principal balance of this loan was calculated using a rate of &lt;span id="xdx_90C_eus-gaap--LineOfCreditFacilityInterestRateDuringPeriod_pid_dp_uPure_c20211001__20211031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zSFLo58ETDc1" title="Debt effective rate"&gt;0.500&lt;/span&gt; percentage points over the Index. Under no circumstances was the
interest rate of this loan less than &lt;span id="xdx_90D_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20211031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--HarrisBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember_zvNVmnHj6nk7" 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 was &lt;span id="xdx_906_eus-gaap--LineOfCreditFacilityInterestRateAtPeriodEnd_iI_pid_dp_uPure_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zVXDrsCmwTM6" title="Annual interest rate of loan"&gt;4.50&lt;/span&gt;%.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 contained 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 required that the Company maintain a minimum ratio of qualifying financial
assets to the sum of qualifying financial obligations.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 had granted Midland a security interest
in substantially all of the assets of NanoChem, exclusive of intellectual property assets which has been revoked.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $&lt;span id="xdx_90B_eus-gaap--LinesOfCreditCurrent_iI_dxL_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zTYT0EvEf9X9" title="Line of Credit::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1125"&gt;nil&lt;/span&gt;&lt;/span&gt; (December 31, 2021 - $&lt;span id="xdx_90C_eus-gaap--LinesOfCreditCurrent_iI_c20211231__us-gaap--LineOfCreditFacilityAxis__custom--HarrisBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zn8eXhahwsIk" title="Line of Credit"&gt;1,489,154&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b/&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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
June 2022, ENP Investments signed a new agreement with Stock Yards Bank and Trust (&#x201c;Stock Yards&#x201d;) to replace the credit
line at Midland. The revolving line of credit is for an aggregate amount of up to the lesser of (i) $&lt;span id="xdx_909_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zISBJdjuPeWk" title="Aggregate amount of revolving line of credit"&gt;4,000,000&lt;/span&gt;, or (ii) 50-80% of
eligible domestic accounts receivable plus &lt;span id="xdx_902_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zx3TZwsWZbb2" title="Percentage of foreign accounts receivable of inventory"&gt;50&lt;/span&gt;% of inventory, capped at $&lt;span id="xdx_909_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zjilbkhNHOp8" title="Debt face amount"&gt;2,000,000&lt;/span&gt;. Interest on the unpaid principal balance of this
loan will be calculated using the greater of prime or 4.0%. The interest rate at December 31, 2022 is &lt;span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20221231__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zDKbMLgiy4e5" title="Interest rate"&gt;7.5&lt;/span&gt;%.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards, Stock Yard&#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_90C_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220630__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_ze9COZLioPi4" title="Loan guaranteed rate"&gt;65&lt;/span&gt;%
of all the principal and other loan costs not to exceed $&lt;span id="xdx_90D_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220630__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zKfWlKSP9DG5" title="Line of credit"&gt;2,600,000&lt;/span&gt;.
The non-controlling interest is the guarantor of the remaining &lt;span id="xdx_901_ecustom--LoanGuaranteedRate_iI_pid_dp_uPure_c20220630__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zGohIFnEXYI6" title="Loan guaranteed rate"&gt;35&lt;/span&gt;% of all the principal and other loan costs not to exceed
$&lt;span id="xdx_906_eus-gaap--LinesOfCreditCurrent_iI_pp0p0_c20220630__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zTkNEJnKu20d" title="Line of credit"&gt;1,400,000&lt;/span&gt;. As of December 31, 2022, 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; 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; 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 Stock Yards a security interest
in substantially all of the assets of ENP Investments, exclusive of intellectual property assets.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 were $&lt;span id="xdx_90A_eus-gaap--ShortTermBorrowings_iI_pp0p0_c20221231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_z7HS3Hs4NKw3" title="Short term borrowings"&gt;2,477,794&lt;/span&gt; (2021- $&lt;span id="xdx_90C_eus-gaap--ShortTermBorrowings_iI_dxL_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockYardAndBankMember_zHrZK1te8wOd" title="Short term borrowings::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1147"&gt;nil&lt;/span&gt;&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(d) &lt;/b&gt;In
June 2022, the Company signed a new agreement with Stock Yards to replace the credit line at Midland. 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_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z53vf9T15Gw" title="Aggregate amount of revolving line of credit"&gt;4,000,000&lt;/span&gt;, or (ii) &lt;span id="xdx_90A_ecustom--EligiblePercentageOfDomesticAccountsReceivable_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zUX2L4iuddDk" 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_901_ecustom--PercentageOfForeignAccountsReceivableOfInventory_pid_dp_uPure_c20220601__20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zlwpkLnfK7Gh" title="Percentage of foreign accounts receivable of inventory"&gt;50&lt;/span&gt;% of inventory, capped at $&lt;span id="xdx_908_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_z4jwX5okdTuc" title="Debt face amount"&gt;2,000,000&lt;/span&gt;. Interest on the unpaid principal balance of this loan will
be calculated using the greater of prime or 4.0%. The interest rate at December 31, 2022 is &lt;span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20220930__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember_zB46NH6wknhl" title="Interest rate"&gt;7.5&lt;/span&gt;%.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 Stock Yards, Stock Yards 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, 2022, the 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; 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; 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 Stock Yards 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; 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; 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, 2022 were $&lt;span id="xdx_907_eus-gaap--ShortTermBorrowings_iI_c20221231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_zdXrzBgWUbVb" title="Short term borrowings"&gt;340,797&lt;/span&gt; (2021 - $&lt;span id="xdx_906_eus-gaap--ShortTermBorrowings_iI_dxL_c20211231__us-gaap--TypeOfArrangementAxis__custom--NewAgreementMember__dei--LegalEntityAxis__custom--NanoChemSolutionIncMember__us-gaap--LineOfCreditFacilityAxis__custom--StockBankMember__us-gaap--CreditFacilityAxis__us-gaap--RevolvingCreditFacilityMember_ziw47pP41Epl" title="Short term borrowings::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1161"&gt;nil&lt;/span&gt;&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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:ShortTermDebtTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2022-03-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">4000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityInterestRateDuringPeriod
      contextRef="From2022-03-012022-03-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.01000</us-gaap:LineOfCreditFacilityInterestRateDuringPeriod>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="AsOf2022-03-31_srt_MaximumMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.0425</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.0425</us-gaap:LineOfCreditFacilityInterestRateAtPeriodEnd>
    <FSI:LoanGuaranteedRate
      contextRef="AsOf2022-03-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember"
      decimals="INF"
      unitRef="Pure">0.65</FSI:LoanGuaranteedRate>
    <us-gaap:LinesOfCreditCurrent
      contextRef="AsOf2022-03-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember"
      decimals="0"
      unitRef="USD">2600000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">811665</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:LinesOfCreditCurrent
      contextRef="AsOf2021-12-31_custom_HarrisBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">1489154</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">4000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <FSI:PercentageOfForeignAccountsReceivableOfInventory
      contextRef="From2022-06-012022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.50</FSI:PercentageOfForeignAccountsReceivableOfInventory>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2022-06-30_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">2000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2022-12-31_custom_StockYardAndBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.075</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <FSI:LoanGuaranteedRate
      contextRef="AsOf2022-06-30_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember"
      decimals="INF"
      unitRef="Pure">0.65</FSI:LoanGuaranteedRate>
    <us-gaap:LinesOfCreditCurrent
      contextRef="AsOf2022-06-30_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember"
      decimals="0"
      unitRef="USD">2600000</us-gaap:LinesOfCreditCurrent>
    <FSI:LoanGuaranteedRate
      contextRef="AsOf2022-06-30_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember"
      decimals="INF"
      unitRef="Pure">0.35</FSI:LoanGuaranteedRate>
    <us-gaap:LinesOfCreditCurrent
      contextRef="AsOf2022-06-30_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember"
      decimals="0"
      unitRef="USD">1400000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember"
      decimals="0"
      unitRef="USD">2477794</us-gaap:ShortTermBorrowings>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">4000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <FSI:EligiblePercentageOfDomesticAccountsReceivable
      contextRef="From2022-06-012022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.80</FSI:EligiblePercentageOfDomesticAccountsReceivable>
    <FSI:PercentageOfForeignAccountsReceivableOfInventory
      contextRef="From2022-06-012022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.50</FSI:PercentageOfForeignAccountsReceivableOfInventory>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2022-06-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="0"
      unitRef="USD">2000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2022-09-30_custom_StockBankMember_custom_MidlandStatesBankMember_custom_NewAgreementMember"
      decimals="INF"
      unitRef="Pure">0.075</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:ShortTermBorrowings
      contextRef="AsOf2022-12-31_custom_NewAgreementMember_custom_NanoChemSolutionIncMember_custom_StockBankMember_us-gaap_RevolvingCreditFacilityMember"
      decimals="0"
      unitRef="USD">340797</us-gaap:ShortTermBorrowings>
    <us-gaap:LongTermDebtTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_804_eus-gaap--LongTermDebtTextBlock_zRFbY4mn6d63" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify"&gt;&lt;span id="xdx_828_zDf2pZXt09ui"&gt;LONG TERM DEBT&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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
January 2018, ENP Investments signed a $&lt;span id="xdx_90A_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_ztPQj5Qm9Gf9" title="Debt instrument face amount"&gt;200,000&lt;/span&gt; promissory note with Midland with a rate of &lt;span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zw79SbEFodEj" title="Debt instrument interest rate stated percentage"&gt;5.250&lt;/span&gt;% to be repaid over &lt;span id="xdx_90B_eus-gaap--DebtInstrumentTerm_dtY_c20180101__20180131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zQ3Zickc0G9" 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 interest for the year ended
December 31, 2021 was $&lt;span id="xdx_90C_eus-gaap--InterestExpenseDebt_c20210101__20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_z7MD0D9Ug1l" title="Interest expense debt"&gt;2,788&lt;/span&gt;. In May 2021, ENP Investments paid the loan in full with cash on hand.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 2020, NanoChem received a &lt;span id="xdx_903_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z4jYjw2NQQl4" title="Debt instrument term"&gt;two year&lt;/span&gt; loan of $&lt;span id="xdx_901_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z8LngB6jG4yi" title="Debt instrument face amount"&gt;322,000&lt;/span&gt; through the Paycheck Protection Program with a rate of &lt;span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_za3XjW5510w4" title="Debt instrument interest rate stated percentage"&gt;1&lt;/span&gt;%. In March 2021,
the loan was forgiven by the SBA and has been recorded as Other Income in the consolidated statements of operations 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; 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; 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
April 2020, ENP Investments received a &lt;span id="xdx_909_eus-gaap--DebtInstrumentTerm_dc_c20200401__20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zCKfvO57F4r" title="Debt instrument term"&gt;two year&lt;/span&gt; loan of $&lt;span id="xdx_90B_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zxcQgn2bcTfd" title="Debt instrument face amount"&gt;215,960&lt;/span&gt; through the Paycheck Protection Program with a rate of &lt;span id="xdx_90D_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200430__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--FordMotorCreditCompanyMember__dei--LegalEntityAxis__custom--EnpInvestmentsLLCMember_zt5B7I6sgvje" title="Debt instrument interest rate stated percentage"&gt;1&lt;/span&gt;%. In March
2021, the loan was forgiven by the SBA and has been recorded as Other Income in the consolidated statements of operations 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; 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"&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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b/&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(d) &lt;/b&gt;In
October 2020, NanoChem signed a $&lt;span id="xdx_903_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zZtZoEgVL6r6" title="Debt instrument face amount"&gt;1,980,947&lt;/span&gt; term loan with Midland with a rate of &lt;span id="xdx_901_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_zHtHKAT4Qu3j" 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_zFqLhyZud7A2" 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_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zHFwVqWL0aKc" title="Debt instrument interest rate stated percentage"&gt;65&lt;/span&gt;% interest in ENP
Investments. In June 2022, the loan was paid in full with funds from Stock Yards. Interest expense for the year December 31, 2022
was $&lt;span id="xdx_900_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zKvkvCU1N01a" title="Debt Long term debt amount"&gt;30,334&lt;/span&gt; (2021 - $&lt;span id="xdx_908_eus-gaap--InterestExpenseDebt_c20210101__20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zyPVInj5i7W3" title="Debt Long term debt amount"&gt;69,831&lt;/span&gt;). The balance owing at December 31, 2022 was $&lt;span id="xdx_90B_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zIGq1lMwgcse" title="Debt default long term debt amount::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1197"&gt;nil&lt;/span&gt;&lt;/span&gt; (2021 - $&lt;span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_z52Cp5G4mOHh" title="Debt Long term debt amount"&gt;1,554,044&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(e) &lt;/b&gt;In
October 2020, NanoChem signed a loan for $&lt;span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zAlqWStcJtV5" title="Debt instrument face amount"&gt;894,253&lt;/span&gt; with Midland with an interest rate &lt;span id="xdx_902_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zc5SPKTLEM64" title="Debt instrument interest rate stated percentage"&gt;3.85&lt;/span&gt;% to be repaid over &lt;span id="xdx_907_eus-gaap--DebtInstrumentTerm_dc_c20201001__20201031__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zr1x3q3VMoA2"&gt;two years&lt;/span&gt; with equal
monthly payments including interest. The funds were used to replace the loan at Harris for the purchase of new manufacturing
equipment. In June 2022, the loan was paid in full with funds from Stock Yards. Interest expense for the year ended December 31,
2022 was $&lt;span id="xdx_907_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zTOYhIjICgF6" title="Interest expense debt"&gt;5,816&lt;/span&gt; (2021 - $&lt;span id="xdx_90D_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zwLDWfyf242a" title="Interest expense debt"&gt;24,827&lt;/span&gt;). The balance owing at December 31, 2022 was $&lt;span id="xdx_90D_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20221231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zEhaCT7AS0ri" title="Debt Long term debt amount::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1210"&gt;nil&lt;/span&gt;&lt;/span&gt; (2021 - $&lt;span id="xdx_90A_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemSolutionsIncMember_zFDbXietLLq4" title="Debt Long term debt amount"&gt;381,674&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
January 2020, ENP Mendota refinanced its mortgage and signed a loan for $&lt;span id="xdx_901_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zknHy8voM714" title="Debt instrument face amount"&gt;450,000&lt;/span&gt; with Stock Yards to be repaid over &lt;span id="xdx_90D_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_z7dzb51NeFv2" 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_905_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--EnpRealtyLLCMember_zVVrZnvxaML6" title="Debt instrument interest rate"&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_907_eus-gaap--DebtInstrumentTerm_dtY_c20200101__20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zOzX1VeKAlT1" 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__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zqpWDfpkMor9"&gt;2.5&lt;/span&gt;%. Interest expense for the year ended December 31, 2022 was
$&lt;span id="xdx_909_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_z0ZWQoMBzA3c" title="Interest expense debt"&gt;18,590&lt;/span&gt; (2021 - $&lt;span id="xdx_908_eus-gaap--InterestExpenseDebt_pp0p0_c20210101__20211231__dei--LegalEntityAxis__custom--ENPMendotaMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zSmZasUuPETi" title="Interest expense debt"&gt;17,107&lt;/span&gt;). The balance owing at December 31, 2022 is $&lt;span id="xdx_90B_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zju78pMnKWye" title="Debt default longterm debt amount"&gt;415,430&lt;/span&gt; (2021 - $&lt;span id="xdx_901_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPMendotaMember_zlXEZ1b3SV54" title="Debt default longterm debt amount"&gt;430,880&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
June 2022, NanoChem signed a loan for $&lt;span id="xdx_902_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zth5VqZAvlpj" title="Debt instrument face amount"&gt;1,935,000&lt;/span&gt; with Stock Yards with an interest rate of &lt;span id="xdx_90A_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemMember_zQfwss3h4ye" title="Debt instrument interest rate stated percentage"&gt;4.90&lt;/span&gt;% to be repaid
over &lt;span id="xdx_908_eus-gaap--DebtInstrumentTerm_dc_c20220601__20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zZnTzhPLuLqk"&gt;three years&lt;/span&gt; with equal monthly payments including interest. The funds were used to replace the loans at Midland for the
purchase of the &lt;span id="xdx_905_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pip0_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zjv0peSvXS96" title="Debt instrument interest rate stated percentage"&gt;65&lt;/span&gt;% interest in ENP Investments and the new manufacturing equipment. Interest expense for the year ended December
31, 2022 was $&lt;span id="xdx_908_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_z8KEOSlLKyrf" title="Interest expense debt"&gt;45,113&lt;/span&gt; (2021 - $&lt;span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zfrRp9fZcqC4" title="Interest expense debt::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1240"&gt;nil&lt;/span&gt;&lt;/span&gt;). The balance owing at December 31, 2022 is $&lt;span id="xdx_902_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zBKz7eHjvIZk" title="Debt Long term debt amount"&gt;1,632,672&lt;/span&gt; (2021 - $&lt;span id="xdx_903_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--NanoChemMember_zWWPODcvoDR1" title="Debt Long term debt amount::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1244"&gt;nil&lt;/span&gt;&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
January 2020 ENP Peru signed a $&lt;span id="xdx_90C_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zKUqKDxzXqY1" title="Debt instrument face amount"&gt;3,000,000&lt;/span&gt; loan with an interest rate &lt;span id="xdx_908_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zt10JBiYicze" title="Debt instrument interest rate stated percentage"&gt;4.35&lt;/span&gt;% to be repaid over &lt;span id="xdx_902_eus-gaap--DebtInstrumentTerm_c20200101__20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zPvYgVNGMfgb"&gt;ten years&lt;/span&gt; with equal monthly payments
including interest. Upon the purchase of the remainder of ENP Peru in June 2022, the Company assumed the first mortgage at Stock
Yards with a balance of $&lt;span id="xdx_906_eus-gaap--LoansPayable_iI_pp0p0_c20200131__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zOL8pqPAb9J7" title="First mortgage"&gt;2,849,500&lt;/span&gt;. Interest expense for the year ended December 31, 2022 was $&lt;span id="xdx_90F_eus-gaap--InterestExpense_pp0p0_c20220101__20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zoYHB9J8VfE" title="Interest expense"&gt;62,679&lt;/span&gt; (2021 - $&lt;span id="xdx_909_eus-gaap--InterestExpense_pp0p0_dxL_c20210101__20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zrqFxY2gVLp9" title="Interest expense::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1255"&gt;nil&lt;/span&gt;&lt;/span&gt;). The balance
owing at December 31, 2022 was $&lt;span id="xdx_904_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_z5AElCPQOdRj" title="Debt instrument face amount"&gt;2,813,015&lt;/span&gt; (2021 - $&lt;span id="xdx_90E_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruOneMember_zj8ttVLYgaD5" title="Debt instrument face amount::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1259"&gt;nil&lt;/span&gt;&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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
June 2022, ENP Peru Investments obtained a second mortgage for $&lt;span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_z2Ae4ch8KJ08" title="Debt instrument face amount"&gt;259,000&lt;/span&gt; with Stock Yards to be repaid over &lt;span id="xdx_901_eus-gaap--DebtInstrumentTerm_c20220601__20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zxDAJGqGRlS1" title="Debt instrument term"&gt;10 years&lt;/span&gt; with monthly
installments plus interest with an interest rate of &lt;span id="xdx_907_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20220630__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zNEfDhbz4x6b" title="Debt instrument interest rate stated percentage"&gt;5.4&lt;/span&gt;%. Interest expense for the year ended December 31, 2022 was $&lt;span id="xdx_906_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zXdm5BB1C5nl" title="Interest expense debt"&gt;7,077&lt;/span&gt; (2021 -
$&lt;span id="xdx_903_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember_zgep0qEszd99" title="Interest expense debt::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1269"&gt;nil&lt;/span&gt;&lt;/span&gt;). The balance owing at December 31, 2022 was $&lt;span id="xdx_908_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zhdIy7nJzu92" title="Debt Long term debt amount"&gt;256,162&lt;/span&gt; (2021 - $&lt;span id="xdx_903_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandBankMember__dei--LegalEntityAxis__custom--ENPPeruInvestmentsMember_zAxouUXyIseg" title="Debt Long term debt amount::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1273"&gt;nil&lt;/span&gt;&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;(j) &lt;/b&gt;In
December 2022, NanoChem signed a three year loan for up to $&lt;span id="xdx_905_eus-gaap--DebtInstrumentFaceAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zO76KkzWIqo4" title="Debt instrument face amount"&gt;2,000,000&lt;/span&gt; with Stock Yards with an interest rate of &lt;span id="xdx_90E_eus-gaap--DebtInstrumentInterestRateStatedPercentage_iI_pid_dp_uPure_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__us-gaap--VariableRateAxis__us-gaap--PrimeRateMember__dei--LegalEntityAxis__custom--NanoChemMember_zQGIRB3vPRy9" title="Debt instrument interest rate stated percentage"&gt;6.5&lt;/span&gt;%. Interest only
payments are required for the first 18 months with interest and principal being paid in the last 18 months. The funds are being used
to purchase new manufacturing equipment. Interest expense for the year ended December 31, 2022 was $&lt;span id="xdx_90C_eus-gaap--InterestExpenseDebt_pp0p0_c20220101__20221231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember_z6uO7lYjSO5f" title="Interest expense debt"&gt;23,632&lt;/span&gt; (2021 - $&lt;span id="xdx_900_eus-gaap--InterestExpenseDebt_pp0p0_dxL_c20210101__20211231__dei--LegalEntityAxis__custom--NanoChemMember__us-gaap--DebtInstrumentAxis__custom--TermLoanMember_zYF5zWZYOL87" title="Interest expense debt::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1281"&gt;nil&lt;/span&gt;&lt;/span&gt;). The
balance owing at December 31, 2022 is $&lt;span id="xdx_909_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_c20221231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zA4eTkPDqDwi" title="Debt Long term debt amount"&gt;1,036,798&lt;/span&gt; (2021 - $&lt;span id="xdx_901_eus-gaap--DebtDefaultLongtermDebtAmount_iI_pp0p0_dxL_c20211231__us-gaap--DebtInstrumentAxis__custom--TermLoanMember__dei--LegalEntityAxis__custom--NanoChemMember_zmAdhmJ46N3g" title="Debt Long term debt amount::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1285"&gt;nil&lt;/span&gt;&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of December 31, 2022, 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; 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_894_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zHvC8QzbWMe2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_zGAiJVg2lanh" 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_49F_20220101__20221231_ze0EakRylO8f" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2022&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_49B_20210101__20211231_zolYBd71smf7" 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;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--LongTermDebt_iS_zdqP51N4peD5" 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;2,366,598&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;3,847,638&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;&#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_409_eus-gaap--LongTermDebt_iS_zd79v3S0ljHf" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Balance, beginning of period&lt;/span&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;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;$&lt;/td&gt;&lt;td style="text-align: right"&gt;3,847,638&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr id="xdx_405_eus-gaap--ProceedsFromBankDebt_za4GshHnUdQ2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,230,798&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1296"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_ecustom--ProceedsFromLoanAcquiredFromAcquisition_zDplANtj8P94" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Plus: Loan acquired with acquisition of ENP Peru&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,849,500&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1299"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--RepaymentsOfBankDebt_iN_di_zDtkTrNJwSL4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1301"&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 style="text-align: right"&gt;(537,960&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_di_zkAX6MoqQBlk" style="vertical-align: bottom; background-color: White"&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;(2,292,819&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;(943,080&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--LongTermDebt_iE_zrYp6fU5hSGb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, end of period&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;6,154,077&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;2,366,598&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_zSfw8Pd0aiul" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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--ScheduleOfDebtInstrumentsTextBlock_zPdLB1tFg7X1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B8_zXe9nTd2vvvb" style="display: none"&gt;SCHEDULE
OF OUTSTANDING BALANCE LOAN&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&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 at December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20221231_zpDDkwj5qB3h" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2022&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_20211231_zIbuCvsdwZgh" 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;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z51OvFVDsBJ" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;a) Long term debt &#x2013; Midland States Bank&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="-sec-ix-hidden: xdx2ixbrl1312"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1313"&gt;-&lt;/span&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--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zOp9DOIG4vl5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;b) 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1315"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1316"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zAF6NKBZo486" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;c) 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1318"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1319"&gt;-&lt;/span&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--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zANa440uuUp5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;d) 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 style="width: 16%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1321"&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 style="width: 16%; text-align: right"&gt;1,554,044&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--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zcSpDytAmH0c" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;e) 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1324"&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 style="text-align: right"&gt;381,674&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zRATjAqHNIOf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;f) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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;415,430&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;430,880&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustTwoMember_zbSIOlIqDCQ1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;g) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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,632,672&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1331"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustThreeMember_zTIJQNJq55Gh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;h) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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,813,015&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1334"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFourMember_zWqqgO20BRFg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;i) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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;256,162&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1337"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFiveMember_z7GugtLGDPxk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;j) 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,036,798&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1340"&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 id="xdx_400_eus-gaap--LongTermDebt_iI_zzlCYBCc0itk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;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;6,154,077&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;2,366,598&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LongTermDebtCurrent_iNI_di_zbdjpnjAF9pi" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(717,612&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;(793,574&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--LongTermDebtNoncurrent_iI_zcrrS4XZ0s6k" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Long term debt&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;5,436,465&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,573,024&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 style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p id="xdx_8AA_zMkclYKLDyQc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember"
      decimals="0"
      unitRef="USD">200000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember"
      decimals="INF"
      unitRef="Pure">0.05250</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2018-01-012018-01-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember">P7Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_MidlandBankMember_custom_EnpInvestmentsLLCMember"
      decimals="0"
      unitRef="USD">2788</us-gaap:InterestExpenseDebt>
    <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_EnpInvestmentsLLCMember">P2Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_custom_EnpInvestmentsLLCMember"
      decimals="0"
      unitRef="USD">215960</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-04-30_custom_FordMotorCreditCompanyMember_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:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-10-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2022-01-012022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">30334</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">69831</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:DebtInstrumentFaceAmount
      contextRef="AsOf2020-10-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      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:DebtInstrumentTerm contextRef="From2020-10-012020-10-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember">P2Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:InterestExpenseDebt
      contextRef="From2022-01-012022-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">5816</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_NanoChemSolutionsIncMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">24827</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_MidlandBankMember_custom_NanoChemSolutionsIncMember"
      decimals="0"
      unitRef="USD">381674</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember"
      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_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember">P5Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember"
      decimals="INF"
      unitRef="Pure">0.025</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2022-01-012022-12-31_custom_ENPMendotaMember_custom_TermLoanMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">18590</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2021-01-012021-12-31_custom_ENPMendotaMember_custom_TermLoanMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">17107</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember"
      decimals="0"
      unitRef="USD">415430</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2021-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPMendotaMember"
      decimals="0"
      unitRef="USD">430880</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember"
      decimals="0"
      unitRef="USD">1935000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_NanoChemMember"
      decimals="INF"
      unitRef="Pure">0.0490</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember">P3Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2022-01-012022-12-31_custom_NanoChemMember_custom_TermLoanMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">45113</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_NanoChemMember"
      decimals="0"
      unitRef="USD">1632672</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember"
      decimals="0"
      unitRef="USD">3000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruOneMember"
      decimals="INF"
      unitRef="Pure">0.0435</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm contextRef="From2020-01-012020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember">P10Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:LoansPayable
      contextRef="AsOf2020-01-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember"
      decimals="0"
      unitRef="USD">2849500</us-gaap:LoansPayable>
    <us-gaap:InterestExpense
      contextRef="From2022-01-012022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember"
      decimals="0"
      unitRef="USD">62679</us-gaap:InterestExpense>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruOneMember"
      decimals="0"
      unitRef="USD">2813015</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember"
      decimals="0"
      unitRef="USD">259000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentTerm contextRef="From2022-06-012022-06-30_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember">P10Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2022-06-30_custom_TermLoanMember_custom_MidlandBankMember_us-gaap_PrimeRateMember_custom_ENPPeruInvestmentsMember"
      decimals="INF"
      unitRef="Pure">0.054</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2022-01-012022-12-31_custom_ENPPeruInvestmentsMember_custom_TermLoanMember_custom_MidlandBankMember"
      decimals="0"
      unitRef="USD">7077</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_MidlandBankMember_custom_ENPPeruInvestmentsMember"
      decimals="0"
      unitRef="USD">256162</us-gaap:DebtDefaultLongtermDebtAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_NanoChemMember"
      decimals="0"
      unitRef="USD">2000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="AsOf2022-12-31_custom_TermLoanMember_us-gaap_PrimeRateMember_custom_NanoChemMember"
      decimals="INF"
      unitRef="Pure">0.065</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:InterestExpenseDebt
      contextRef="From2022-01-012022-12-31_custom_NanoChemMember_custom_TermLoanMember"
      decimals="0"
      unitRef="USD">23632</us-gaap:InterestExpenseDebt>
    <us-gaap:DebtDefaultLongtermDebtAmount
      contextRef="AsOf2022-12-31_custom_TermLoanMember_custom_NanoChemMember"
      decimals="0"
      unitRef="USD">1036798</us-gaap:DebtDefaultLongtermDebtAmount>
    <FSI:ScheduleOfLoanCovenantsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_894_ecustom--ScheduleOfLoanCovenantsTableTextBlock_zHvC8QzbWMe2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_zGAiJVg2lanh" 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_49F_20220101__20221231_ze0EakRylO8f" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2022&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_49B_20210101__20211231_zolYBd71smf7" 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;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--LongTermDebt_iS_zdqP51N4peD5" 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;2,366,598&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;3,847,638&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;&#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_409_eus-gaap--LongTermDebt_iS_zd79v3S0ljHf" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Balance, beginning of period&lt;/span&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;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;$&lt;/td&gt;&lt;td style="text-align: right"&gt;3,847,638&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr id="xdx_405_eus-gaap--ProceedsFromBankDebt_za4GshHnUdQ2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,230,798&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1296"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_ecustom--ProceedsFromLoanAcquiredFromAcquisition_zDplANtj8P94" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Plus: Loan acquired with acquisition of ENP Peru&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,849,500&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1299"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--RepaymentsOfBankDebt_iN_di_zDtkTrNJwSL4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1301"&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 style="text-align: right"&gt;(537,960&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--PaymentsForProceedsFromDepositOnLoan_iN_di_zkAX6MoqQBlk" style="vertical-align: bottom; background-color: White"&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;(2,292,819&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;(943,080&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--LongTermDebt_iE_zrYp6fU5hSGb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance, end of period&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;6,154,077&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;2,366,598&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="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: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:ProceedsFromBankDebt
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">3230798</us-gaap:ProceedsFromBankDebt>
    <FSI:ProceedsFromLoanAcquiredFromAcquisition
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">2849500</FSI:ProceedsFromLoanAcquiredFromAcquisition>
    <us-gaap:RepaymentsOfBankDebt
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">537960</us-gaap:RepaymentsOfBankDebt>
    <us-gaap:PaymentsForProceedsFromDepositOnLoan
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">2292819</us-gaap:PaymentsForProceedsFromDepositOnLoan>
    <us-gaap:PaymentsForProceedsFromDepositOnLoan
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">943080</us-gaap:PaymentsForProceedsFromDepositOnLoan>
    <us-gaap:LongTermDebt contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6154077</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2366598</us-gaap:LongTermDebt>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_892_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zPdLB1tFg7X1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B8_zXe9nTd2vvvb" style="display: none"&gt;SCHEDULE
OF OUTSTANDING BALANCE LOAN&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&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 at December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20221231_zpDDkwj5qB3h" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;December 31, 2022&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_20211231_zIbuCvsdwZgh" 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;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankMember_z51OvFVDsBJ" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;a) Long term debt &#x2013; Midland States Bank&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="-sec-ix-hidden: xdx2ixbrl1312"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1313"&gt;-&lt;/span&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--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramMember_zOp9DOIG4vl5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;b) 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1315"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1316"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--PaycheckProtectionProgramOneMember_zAF6NKBZo486" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;c) 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1318"&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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1319"&gt;-&lt;/span&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--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankOneMember_zANa440uuUp5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;d) 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 style="width: 16%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1321"&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 style="width: 16%; text-align: right"&gt;1,554,044&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--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--MidlandStatesBankTwoMember_zcSpDytAmH0c" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;e) 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1324"&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 style="text-align: right"&gt;381,674&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustMember_zRATjAqHNIOf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;f) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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;415,430&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;430,880&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustTwoMember_zbSIOlIqDCQ1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;g) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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,632,672&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1331"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustThreeMember_zTIJQNJq55Gh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;h) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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,813,015&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1334"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFourMember_zWqqgO20BRFg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;i) Long term debt &#x2013; Stock Yards Bank &amp;amp; Trust&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;256,162&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1337"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LongTermDebt_iI_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--StockYardsBankTrustFiveMember_z7GugtLGDPxk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;j) 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,036,798&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1340"&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 id="xdx_400_eus-gaap--LongTermDebt_iI_zzlCYBCc0itk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;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;6,154,077&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;2,366,598&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LongTermDebtCurrent_iNI_di_zbdjpnjAF9pi" style="vertical-align: bottom; background-color: White"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(717,612&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;(793,574&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--LongTermDebtNoncurrent_iI_zcrrS4XZ0s6k" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Long term debt&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;5,436,465&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,573,024&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 style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

</us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankOneMember"
      decimals="0"
      unitRef="USD">1554044</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_MidlandStatesBankTwoMember"
      decimals="0"
      unitRef="USD">381674</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_StockYardsBankTrustMember"
      decimals="0"
      unitRef="USD">415430</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2021-12-31_custom_StockYardsBankTrustMember"
      decimals="0"
      unitRef="USD">430880</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_StockYardsBankTrustTwoMember"
      decimals="0"
      unitRef="USD">1632672</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_StockYardsBankTrustThreeMember"
      decimals="0"
      unitRef="USD">2813015</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_StockYardsBankTrustFourMember"
      decimals="0"
      unitRef="USD">256162</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="AsOf2022-12-31_custom_StockYardsBankTrustFiveMember"
      decimals="0"
      unitRef="USD">1036798</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6154077</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2366598</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">717612</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">793574</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">5436465</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1573024</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_800_eus-gaap--IncomeTaxDisclosureTextBlock_zCQgZ7eLuYf9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;13.
&lt;span&gt;Income Taxes&lt;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span id="xdx_82F_zTrloLXAKwM2"&gt;INCOME TAXES&lt;/span&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_895_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z3wOe1Zl9r8e" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zpWjriyJZ2g9" 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_49B_20220101__20221231_zOrbSzqvbztd" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20210101__20211231_zVlMaxgLp4d4" 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;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zHWhd8rmwiVf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;1,017,059&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;1,309,503&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_zLdopQG8Faak" 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;460,098&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;592,394&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_z3eKKdARv68i" 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;216,082&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;91,285&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_405_ecustom--CurrentTax_pp0p0_mtCITEBzvlG_maCITEBzPIr_zXL3EDO1lREg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Current 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;1,693,239&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,993,182&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--IncomeTaxRecovery_pp0p0_maCITEBzPIr_zSDSptipEWG5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;Income tax 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;(1,476,088&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1368"&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 id="xdx_40D_ecustom--CurrentIncomeTaxExpenseBenefits_iT_mtCITEBzPIr_maITEBz5Oq_z7ujDL1kONY5" 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;217,151&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,993,182&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_zUPjLo5tZ1y2" 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;(49,088&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;250,153&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_zAWsGCb8ugd4" 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;(22,207&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;113,164&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_z6KAAmxQH5I9" 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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1379"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1380"&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 id="xdx_400_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz5Oq_zCC3522t8fqa" 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;(71,295&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;363,317&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_40F_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz5Oq_z3yQwZFDvhLj" 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;145,856&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;2,356,499&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_zjCNQQQyu7E7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

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

&lt;p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zPQx4ry3mHIh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zkV0Z8yt88H3" style="display: none"&gt;SCHEDULE
OF RECONCILIATION OF INCOME TAXES&lt;/span&gt;&#160;&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_499_20220101__20221231_zJbWP80Qm3u8" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_49D_20210101__20211231_zXK2frTkD0J5" 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;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_zu2ACpSeLdd2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;7,859,085&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;6,650,756&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_zHOsrbibMjCb" 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_z7IsTOAt4qDc" 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,397,021&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;2,028,481&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;(243,167&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;(29,508&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;(2,004,041&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;(65,027&lt;/td&gt;&lt;td style="text-align: left"&gt;)&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1405"&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 style="text-align: right"&gt;337,961&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;(226,611&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;(86,696&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;222,654&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;(171,288&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;145,856&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;2,356,499&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_401_eus-gaap--CurrentIncomeTaxExpenseBenefit_z8gaW7vaD2ea" 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;217,151&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,993,182&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_zZYhwLVYogt7" 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;(71,295&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;363,317&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_zdwexhlosr83" 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;145,856&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;2,356,499&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_8AD_z3BCW5r1xKti" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Included
in current income tax expense for the year ended December 31, 2022 is a recovery of $&lt;span id="xdx_902_ecustom--CurrentIncomeTaxExpense_c20220101__20221231_zr8JQ2vWOJ9b" title="Current income tax expense"&gt;1,476,088&lt;/span&gt; (2022 - $&lt;span id="xdx_908_ecustom--CurrentIncomeTaxExpense_dxL_c20210101__20211231_znaO4oa2lkK" title="Current income tax expense::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1428"&gt;nil&lt;/span&gt;&lt;/span&gt;) for a revision of estimated
current taxes payable for previous years.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zMB7472eQDAg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021 are comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_zzyVvVHj7Kvj" style="display: none"&gt;SCHEDULE
OF DEFERRED TAX ASSETS (LIABILITIES)&lt;/span&gt;&#160;&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;2022&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;2021&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: 60%; 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_98F_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjBkFtcjWMu8" style="width: 16%; text-align: right" title="Non capital loss carryforwards"&gt;891,954&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--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCK9kRgBTm6g" style="width: 16%; 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;/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_98C_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zIVYodqoJ8T8" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1436"&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--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z82Sh7XhYAS3" 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;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left; padding-left: 10pt"&gt;Property, equipment and leaseholds&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--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zheTqIjX1U09" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds"&gt;47,279&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_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zR14AboH1Wa3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds"&gt;587,408&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 id="xdx_983_eus-gaap--DeferredTaxAssetsGross_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zVc36RcNa9D7" style="text-align: right" title="Deferred tax assets gross"&gt;939,230&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--DeferredTaxAssetsGross_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjaYq5VYZAwe" style="text-align: right" title="Deferred tax assets gross"&gt;2,050,628&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;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_98F_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zO9F5MXypChe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance"&gt;(939,230&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_982_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zopsoBfKYZZ6" 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;/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&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--DeferredTaxAssetsNet_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zxN5S0uydLch" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1452"&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_98A_eus-gaap--DeferredTaxAssetsNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zPk79oavyO92" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1454"&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: 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 style="vertical-align: bottom; background-color: rgb(204,238,255)"&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: 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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2022&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;2021&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-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_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zx7quhVoLHwh" style="text-align: right" title="Net operating loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1456"&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--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zW8f6rDgp2A5" style="text-align: right" title="Non capital loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1458"&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; 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_989_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z9lsNWqmf2Q4" style="text-align: right" title="Intangible assets"&gt;(6,070&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_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8SXjfhiTNBc" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1462"&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="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_98E_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zzZlTpuEXbd" style="text-align: right" title="Investments"&gt;(7,676&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_984_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zf8Mx9acdJHc" style="text-align: right" title="Investments"&gt;(241,880&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-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--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0bPn1tEEsj" style="text-align: right" title="Property, equipment and leaseholds"&gt;(486,713&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_98E_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zIyG7HRHkTti" 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;/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_98B_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zNgwkBj4uGXk" style="text-align: right" title="Property, equipment and leaseholds"&gt;274,289&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_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z17Hp0ue0ro7" 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;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&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_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zOYiX6FunMEh" style="text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1476"&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_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zBBwqFKJj641" style="text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1478"&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-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_980_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zfX9Mj4pIYq2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1480"&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_98A_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zt73E9P3Zomk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1482"&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: White"&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_980_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zmtJbt7yFYx9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)"&gt;(226,170&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_98A_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_ziqaVAZKYX83" 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;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A7_znlWgEzHn77" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_90D_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zQIHDJnEewH5" title="Operating loss carryforwards"&gt;3,878,060&lt;/span&gt; (2021 - $&lt;span id="xdx_900_eus-gaap--OperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z35R063Dmsi3" title="Operating loss carryforwards"&gt;6,275,526&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_895_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zvWxHL3QZ2gi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BA_zDB4pPETi302" 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&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: 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: 52%; text-align: right"&gt;2030&lt;/td&gt;&lt;td style="width: 0%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zreS5k1wcIRa" style="width: 46%; text-align: right" title="Total"&gt;645,781&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;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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneYearMember_zU6OVSGS3Pr7" style="text-align: right" title="Total"&gt;919,683&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;2032&lt;/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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTwoYearMember_zy3xV3FApd38" style="text-align: right" title="Total"&gt;601,379&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_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenYearMember_zlpxDUt1lULl" style="text-align: right" title="Total"&gt;1,652,709&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;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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineYearMember_zAtu4w90EDpc" style="text-align: right" title="Total"&gt;46,917&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;2040&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--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandFourtyYearMember_zU2QzuyHGOLa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;11,591&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_98E_eus-gaap--OperatingLossCarryforwards_iI_c20221231_zOJw2uzcgMn2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;3,878,060&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_zFAOflZ4jng7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022, 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; 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; 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; 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; 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, 2022 and 2021, the Company&#x2019;s consolidated balance sheets did not reflect an asset 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; 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"&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; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b/&gt;&lt;/span&gt;&lt;/p&gt;
</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_895_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z3wOe1Zl9r8e" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zpWjriyJZ2g9" 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_49B_20220101__20221231_zOrbSzqvbztd" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20210101__20211231_zVlMaxgLp4d4" 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;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--CurrentFederalTaxExpenseBenefit_maCITEBzvlG_zHWhd8rmwiVf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;1,017,059&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;1,309,503&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_zLdopQG8Faak" 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;460,098&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;592,394&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_z3eKKdARv68i" 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;216,082&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;91,285&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_405_ecustom--CurrentTax_pp0p0_mtCITEBzvlG_maCITEBzPIr_zXL3EDO1lREg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Current 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;1,693,239&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,993,182&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--IncomeTaxRecovery_pp0p0_maCITEBzPIr_zSDSptipEWG5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;Income tax 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;(1,476,088&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1368"&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 id="xdx_40D_ecustom--CurrentIncomeTaxExpenseBenefits_iT_mtCITEBzPIr_maITEBz5Oq_z7ujDL1kONY5" 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;217,151&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,993,182&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_zUPjLo5tZ1y2" 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;(49,088&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;250,153&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_zAWsGCb8ugd4" 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;(22,207&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;113,164&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_z6KAAmxQH5I9" 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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1379"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1380"&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 id="xdx_400_eus-gaap--DeferredIncomeTaxExpenseBenefit_iT_pp0p0_mtDITEBzP63_maITEBz5Oq_zCC3522t8fqa" 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;(71,295&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;363,317&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_40F_eus-gaap--IncomeTaxExpenseBenefit_iT_pp0p0_mtITEBz5Oq_z3yQwZFDvhLj" 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;145,856&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;2,356,499&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="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1017059</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1309503</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">460098</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">592394</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">216082</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">91285</us-gaap:CurrentForeignTaxExpenseBenefit>
    <FSI:CurrentTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1693239</FSI:CurrentTax>
    <FSI:CurrentTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1993182</FSI:CurrentTax>
    <FSI:IncomeTaxRecovery
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-1476088</FSI:IncomeTaxRecovery>
    <FSI:CurrentIncomeTaxExpenseBenefits
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">217151</FSI:CurrentIncomeTaxExpenseBenefits>
    <FSI:CurrentIncomeTaxExpenseBenefits
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1993182</FSI:CurrentIncomeTaxExpenseBenefits>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-49088</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">250153</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-22207</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">113164</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-71295</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">145856</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2356499</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_897_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zPQx4ry3mHIh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zkV0Z8yt88H3" style="display: none"&gt;SCHEDULE
OF RECONCILIATION OF INCOME TAXES&lt;/span&gt;&#160;&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_499_20220101__20221231_zJbWP80Qm3u8" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_49D_20210101__20211231_zXK2frTkD0J5" 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;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_zu2ACpSeLdd2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; 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: 16%; text-align: right"&gt;7,859,085&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;6,650,756&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_zHOsrbibMjCb" 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_z7IsTOAt4qDc" 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,397,021&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;2,028,481&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;(243,167&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;(29,508&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;(2,004,041&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;(65,027&lt;/td&gt;&lt;td style="text-align: left"&gt;)&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;&lt;span style="-sec-ix-hidden: xdx2ixbrl1405"&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 style="text-align: right"&gt;337,961&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;(226,611&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;(86,696&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;222,654&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;(171,288&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;145,856&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;2,356,499&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_401_eus-gaap--CurrentIncomeTaxExpenseBenefit_z8gaW7vaD2ea" 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;217,151&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,993,182&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_zZYhwLVYogt7" 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;(71,295&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;363,317&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_zdwexhlosr83" 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;145,856&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;2,356,499&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="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7859085</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">6650756</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.3050</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.3050</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <FSI:ExpectedIncomeTaxRecovery
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">2397021</FSI:ExpectedIncomeTaxRecovery>
    <FSI:ExpectedIncomeTaxRecovery
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2028481</FSI:ExpectedIncomeTaxRecovery>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-243167</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-29508</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-2004041</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-65027</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">337961</us-gaap:IncomeTaxReconciliationChangeInEnactedTaxRate>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-226611</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-86696</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">222654</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-171288</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">145856</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2356499</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">217151</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1993182</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-71295</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">363317</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">145856</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2356499</us-gaap:IncomeTaxExpenseBenefit>
    <FSI:CurrentIncomeTaxExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1476088</FSI:CurrentIncomeTaxExpense>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_895_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zMB7472eQDAg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021 are comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_zzyVvVHj7Kvj" style="display: none"&gt;SCHEDULE
OF DEFERRED TAX ASSETS (LIABILITIES)&lt;/span&gt;&#160;&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;2022&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;2021&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: 60%; 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_98F_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjBkFtcjWMu8" style="width: 16%; text-align: right" title="Non capital loss carryforwards"&gt;891,954&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--DeferredTaxAssetsOperatingLossCarryforwards_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCK9kRgBTm6g" style="width: 16%; 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;/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_98C_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zIVYodqoJ8T8" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1436"&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--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z82Sh7XhYAS3" 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;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left; padding-left: 10pt"&gt;Property, equipment and leaseholds&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--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zheTqIjX1U09" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds"&gt;47,279&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_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zR14AboH1Wa3" style="border-bottom: Black 1.5pt solid; text-align: right" title="Property, equipment and leaseholds"&gt;587,408&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 id="xdx_983_eus-gaap--DeferredTaxAssetsGross_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zVc36RcNa9D7" style="text-align: right" title="Deferred tax assets gross"&gt;939,230&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--DeferredTaxAssetsGross_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zjaYq5VYZAwe" style="text-align: right" title="Deferred tax assets gross"&gt;2,050,628&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;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_98F_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zO9F5MXypChe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Valuation Allowance"&gt;(939,230&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_982_eus-gaap--DeferredTaxAssetsValuationAllowance_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zopsoBfKYZZ6" 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;/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&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--DeferredTaxAssetsNet_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zxN5S0uydLch" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1452"&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_98A_eus-gaap--DeferredTaxAssetsNet_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zPk79oavyO92" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1454"&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: 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 style="vertical-align: bottom; background-color: rgb(204,238,255)"&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: 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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;2022&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;2021&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-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_984_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zx7quhVoLHwh" style="text-align: right" title="Net operating loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1456"&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--DeferredTaxAssetsOperatingLossCarryforwards_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zW8f6rDgp2A5" style="text-align: right" title="Non capital loss carryforwards"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1458"&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; 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_989_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z9lsNWqmf2Q4" style="text-align: right" title="Intangible assets"&gt;(6,070&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_988_eus-gaap--DeferredTaxAssetsGoodwillAndIntangibleAssets_iI_pdp0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z8SXjfhiTNBc" style="text-align: right" title="Intangible assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1462"&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="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_98E_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zzZlTpuEXbd" style="text-align: right" title="Investments"&gt;(7,676&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_984_eus-gaap--DeferredTaxAssetsInvestments_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zf8Mx9acdJHc" style="text-align: right" title="Investments"&gt;(241,880&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-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--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z0bPn1tEEsj" style="text-align: right" title="Property, equipment and leaseholds"&gt;(486,713&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_98E_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipmentOne_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zIyG7HRHkTti" 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;/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_98B_ecustom--DeferredTaxAssetsPropertyPlantsAndEquipment_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zNgwkBj4uGXk" style="text-align: right" title="Property, equipment and leaseholds"&gt;274,289&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_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_z17Hp0ue0ro7" 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;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&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_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zOYiX6FunMEh" style="text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1476"&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_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zBBwqFKJj641" style="text-align: right" title="Financial instruments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1478"&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-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_980_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zfX9Mj4pIYq2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1480"&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_98A_ecustom--DeferredTaxAssetNotRecognized_iI_pp0p0_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zt73E9P3Zomk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax asset not recognized"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1482"&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: White"&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_980_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_zmtJbt7yFYx9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Net deferred tax asset (liability)"&gt;(226,170&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_98A_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_pp0p0_di_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--InternalRevenueServiceIRSMember_ziqaVAZKYX83" 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;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">891954</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">1443371</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">19849</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">47279</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">587408</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">939230</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">2050628</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">939230</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">2050628</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">-6070</us-gaap:DeferredTaxAssetsGoodwillAndIntangibleAssets>
    <us-gaap:DeferredTaxAssetsInvestments
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">7676</us-gaap:DeferredTaxAssetsInvestments>
    <us-gaap:DeferredTaxAssetsInvestments
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">241880</us-gaap:DeferredTaxAssetsInvestments>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">486713</FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">68282</FSI:DeferredTaxAssetsPropertyPlantsAndEquipmentOne>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">-274289</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <FSI:DeferredTaxAssetsPropertyPlantsAndEquipment
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">-12697</FSI:DeferredTaxAssetsPropertyPlantsAndEquipment>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="AsOf2022-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">226170</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="AsOf2021-12-31_us-gaap_InternalRevenueServiceIRSMember"
      decimals="0"
      unitRef="USD">297465</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">3878060</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">6275526</us-gaap:OperatingLossCarryforwards>
    <FSI:ScheduleOfNonOperatingLossCarryforwardsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_895_ecustom--ScheduleOfNonOperatingLossCarryforwardsTableTextBlock_zvWxHL3QZ2gi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BA_zDB4pPETi302" 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&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: 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: 52%; text-align: right"&gt;2030&lt;/td&gt;&lt;td style="width: 0%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTaxYearMember_zreS5k1wcIRa" style="width: 46%; text-align: right" title="Total"&gt;645,781&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;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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyOneYearMember_zU6OVSGS3Pr7" style="text-align: right" title="Total"&gt;919,683&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;2032&lt;/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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyTwoYearMember_zy3xV3FApd38" style="text-align: right" title="Total"&gt;601,379&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_98F_eus-gaap--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtySevenYearMember_zlpxDUt1lULl" style="text-align: right" title="Total"&gt;1,652,709&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;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_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandThirtyNineYearMember_zAtu4w90EDpc" style="text-align: right" title="Total"&gt;46,917&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;2040&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--OperatingLossCarryforwards_iI_c20221231__us-gaap--TaxPeriodAxis__custom--TwoThousandFourtyYearMember_zU2QzuyHGOLa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;11,591&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_98E_eus-gaap--OperatingLossCarryforwards_iI_c20221231_zOJw2uzcgMn2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;3,878,060&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="AsOf2022-12-31_custom_TwoThousandThirtyTaxYearMember"
      decimals="0"
      unitRef="USD">645781</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2022-12-31_custom_TwoThousandThirtyOneYearMember"
      decimals="0"
      unitRef="USD">919683</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2022-12-31_custom_TwoThousandThirtyTwoYearMember"
      decimals="0"
      unitRef="USD">601379</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2022-12-31_custom_TwoThousandThirtySevenYearMember"
      decimals="0"
      unitRef="USD">1652709</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2022-12-31_custom_TwoThousandThirtyNineYearMember"
      decimals="0"
      unitRef="USD">46917</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="AsOf2022-12-31_custom_TwoThousandFourtyYearMember"
      decimals="0"
      unitRef="USD">11591</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3878060</us-gaap:OperatingLossCarryforwards>
    <us-gaap:EarningsPerShareTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_808_eus-gaap--EarningsPerShareTextBlock_zsNcB4UXsvO2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 Per Share&lt;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify"&gt;&lt;span id="xdx_82D_zw6eWWNHItl5"&gt;INCOME PER SHARE&lt;/span&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_z6smLswLQgE4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 35.3pt"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BA_zDGtTpiF1VIi" 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: 0.5in; border-collapse: collapse; width: 80%"&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_49D_20220101__20221231_zAIa64gXVbui" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20210101__20211231_ztb3sm9hHuTk" 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;/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: 60%; 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: 16%; text-align: right"&gt;7,021,604&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;3,449,162&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_zkwImRlX5SG3" 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,379,316&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,316,254&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_zAGSN3yKH4m" 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,466,415&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,505,522&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_409_eus-gaap--EarningsPerShareBasic_zq5nc3uue8Pa" style="vertical-align: bottom; background-color: White"&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;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.57&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;0.28&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--EarningsPerShareDiluted_zUNarqe6c643" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;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.56&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.28&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_zAB4pHz57Edk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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 15, &#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_890_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_z7T04V8PGijb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B8_zB0nYfc3ecl1" 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: 0.5in; border-collapse: collapse; width: 80%"&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_498_20220101__20221231_z8nKvERc6Uig" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20210101__20211231_zFMQI4Nhnd81" 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;/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" style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&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 id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 1.5pt"&gt;Anti-dilutive options&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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"&gt;1,304,000&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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"&gt;21,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;/table&gt;

&lt;p id="xdx_8A0_zevyv5281C0i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zAGOxAnDrL29" title="Preferred stock, shares issued"&gt;&lt;span id="xdx_908_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zi3Am3o5rjz3" title="Preferred stock, shares outstanding"&gt;&lt;span id="xdx_900_eus-gaap--PreferredStockSharesIssued_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z3IYB8HJ7Hm" title="Preferred stock, shares issued"&gt;&lt;span id="xdx_904_eus-gaap--PreferredStockSharesOutstanding_iI_pid_do_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_z1uQWuNldPW8" 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, 2022 or 2021.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31">&lt;p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_z6smLswLQgE4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 35.3pt"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BA_zDGtTpiF1VIi" 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: 0.5in; border-collapse: collapse; width: 80%"&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_49D_20220101__20221231_zAIa64gXVbui" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20210101__20211231_ztb3sm9hHuTk" 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;/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: 60%; 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: 16%; text-align: right"&gt;7,021,604&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;3,449,162&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_zkwImRlX5SG3" 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,379,316&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,316,254&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_zAGSN3yKH4m" 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,466,415&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,505,522&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_409_eus-gaap--EarningsPerShareBasic_zq5nc3uue8Pa" style="vertical-align: bottom; background-color: White"&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;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.57&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;0.28&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--EarningsPerShareDiluted_zUNarqe6c643" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;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.56&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.28&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="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7021604</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">3449162</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">12379316</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">12316254</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">12466415</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">12505522</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.57</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.28</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.28</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_890_eus-gaap--ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_z7T04V8PGijb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B8_zB0nYfc3ecl1" 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: 0.5in; border-collapse: collapse; width: 80%"&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_498_20220101__20221231_z8nKvERc6Uig" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_20210101__20211231_zFMQI4Nhnd81" 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;/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" style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&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 id="xdx_40D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_i_pdd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 1.5pt"&gt;Anti-dilutive options&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 style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"&gt;1,304,000&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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 16%; text-align: right"&gt;21,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;/table&gt;

</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">1304000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">21000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="INF"
      unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="INF"
      unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2021-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:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_801_eus-gaap--DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_zogxM1XrBFRb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;15.
&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;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span id="xdx_82E_zuPJXM1BEi28"&gt;STOCK OPTIONS&lt;/span&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; 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_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_pid_dp_uPure_c20220101__20221231_zhYordnpnMHb" 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_901_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_dtY_c20220101__20221231_za1Lcs8XVk4e" 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; 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_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zxwPch9uAy92" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_zmTrlLWlgpve" 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, 2020&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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_zxnOtr8Fn5xa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance"&gt;749,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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zspUpY3EggRf" title="Exercise price per share, Beginning Balance"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z06EZ0bv7Gac" title="Exercise price per share, Beginning Balance"&gt;4.13&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_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20210101__20211231_zPbqzuSazOP9" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance"&gt;2.42&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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_z0JtIv2ZvtT1" 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 style="text-align: right"&gt;&lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20210101__20211231_pdd" title="Exercise price per share, Granted"&gt;3.61&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_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zrSt66uLRGk2" 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_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Cancelled or expired"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_90A_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zh6BlQjD887d" 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 style="text-align: right"&gt;&lt;span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zeFDpFUZCxok" title="Weighted average exercise price, Cancelled or expired"&gt;2.30&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-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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_ziqYSKiISl3h" 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_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Exercised"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_pdd" 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_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;&#160;&#160;&#160;&#160;&#160;&#160;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&gt;Balance, December 31, 2021&lt;/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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20220101__20221231_zXoB3eETXFcb" style="text-align: right" title="Number of shares, Beginning Balance"&gt;789,500&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_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z2CPNhgPDvFf" title="Exercise price per share, Beginning Balance"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zAmMy8PXbfih" 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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20220101__20221231_zivQGeZcGp8h" style="text-align: right" title="Weighted average exercise price, Ending Balance"&gt;2.78&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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231_zyjNUl12qMsd" style="text-align: right" title="Number of shares, Granted"&gt;981,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_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zyilmJUT4Mh1" title="Exercise price per share, Granted"&gt;3.55&lt;/span&gt; &#x2013; &lt;span id="xdx_903_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_z98lS7YJsExd" title="Exercise price per share, Granted"&gt;3.61&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_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20220101__20221231_z2i1Jnf6MrL2" style="text-align: right" title="Weighted average exercise price, Granted"&gt;3.55&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_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20220101__20221231_zejewlsH9Hr8" style="text-align: right" title="Number of shares, Cancelled or expired"&gt;(13,486&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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z7DzanglMKh8" title="Exercise price per share,cancelled"&gt;1.70&lt;/span&gt; &#x2013; &lt;span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zCEI6SlljaLc" title="Exercise price per share,cancelled"&gt;3.61&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_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zLIKtxrGifU2" style="text-align: right" title="Weighted average exercise price, Cancelled or expired"&gt;2.32&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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20220101__20221231_zv8bsJSM4Hul" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised"&gt;(71,014&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_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_ztJFxzAjkyvd" title="Exercise price per share, Exercised"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zUckAKWhdlZg" title="Exercise price per share, Exercised"&gt;2.44&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--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20220101__20221231_zauAjwQKkhok" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;1.98&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, 2022&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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20220101__20221231_zre1ahLqdHq7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance"&gt;1,686,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;$&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_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zV4cec7jDHth" title="Exercise price per share, Ending Balance"&gt;1.70&lt;/span&gt; &#x2013; &lt;span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zf65g4SxRv9a" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_c20220101__20221231_zCsjq6OTksr9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance"&gt;3.26&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, 2022&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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20220101__20221231_ztFK1xRSx3Ea" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance"&gt;680,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;$&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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z8R8xLcYrbak" title="Exercise price per share Exercisable, Ending Balance"&gt;1.70&lt;/span&gt; &#x2013; &lt;span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zoY0f2cYHXy7" 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_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_c20220101__20221231_zbuOYWAvdxqi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance"&gt;2.92&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_zxQwhiUnhdG7" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_dtY_c20220101__20221231_zxT1fFOz2tPi" title="Weighted-average remaining contractual life"&gt;3.90&lt;/span&gt; years.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_z7fpM6eQ7YVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_z4M53mEL2Ge3" 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; border-collapse: collapse; width: 90%; margin-left: 0.5in"&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;2022&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;2021&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: 60%; 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: 16%; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20220101__20221231_zkVa0On95SZi" 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: 16%; text-align: right"&gt;&lt;span id="xdx_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_zhr5t9Jav4Th" 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 style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zy7dDJfkvWNh" title="Interest rate"&gt;1.76&lt;/span&gt; &#x2013; &lt;span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_znpoj4AtCcF7" title="Interest rate"&gt;3.64&lt;/span&gt;&lt;/span&gt;&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;&lt;span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_zBhyq8BPRq88" title="Interest rate"&gt;1.23&lt;/span&gt;&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 style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zMwDBd9DmNTl" title="Volatility"&gt;66.01&lt;/span&gt;
- &lt;span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zzPIwQBGYV2e" title="Volatility"&gt;69.66&lt;/span&gt;&lt;/span&gt;&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;&lt;span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_z8bHMwqZa0x4" title="Volatility"&gt;63.28&lt;/span&gt;&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 style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zDWg1O60ipi4" title="Weighted average fair value of options granted"&gt;1.46&lt;/span&gt; &#x2013; &lt;span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zw9X1pKbfXJh" title="Weighted average fair value of options granted"&gt;1.65&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 style="text-align: right"&gt;&lt;span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zecYNL0YIWLc" title="Weighted average fair value of options granted"&gt;1.23&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_zTwPeiVyYqDg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&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; 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, 2022, the Company granted &lt;span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z3cLGeDzKBvh" title="Stock options granted"&gt;46,000&lt;/span&gt; (2021 &#x2013; &lt;span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z4oOnTevuYk4" 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_90B_eus-gaap--StockOptionPlanExpense_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zfbMKQ4gNNF" title="Stock option expense"&gt;14,850&lt;/span&gt; (2021 - $&lt;span id="xdx_903_eus-gaap--StockOptionPlanExpense_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zkDvEUxYGZT" title="Stock option expense"&gt;13,860&lt;/span&gt;). Options granted in other years
resulted in additional expenses of $&lt;span id="xdx_900_ecustom--AdditionalExpensesDueToOptionsGranted_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zFxRxYjnvlJg" title="Additional expenses due to options granted"&gt;62,187&lt;/span&gt; (2021 &#x2013; $&lt;span id="xdx_904_ecustom--AdditionalExpensesDueToOptionsGranted_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_z3KlllCNcHt8" title="Additional expenses due to options granted"&gt;51,210&lt;/span&gt;). During the year ended December 31, 2022, employees were granted &lt;span id="xdx_903_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zkhY4H8qcC8b" title="Stock options granted"&gt;935,000&lt;/span&gt;
(2021 &#x2013; &lt;span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zITA2fLwZpOk" title="Stock options granted"&gt;125,000&lt;/span&gt;) stock options, which resulted in expenses of $&lt;span id="xdx_908_eus-gaap--StockOptionPlanExpense_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zQLW1C8YT1L3" title="Stock option expense"&gt;172,731&lt;/span&gt; (2021 &#x2013; $&lt;span id="xdx_904_eus-gaap--StockOptionPlanExpense_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_z57hHZNvlHo" title="Stock option expense"&gt;38,500&lt;/span&gt;). Options granted in other years resulted
in additional expenses in the amount of $&lt;span id="xdx_908_ecustom--AdditionalExpensesDueToOptionsGranted_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zG1nkzo1hOaj" title="Additional expenses due to options granted"&gt;149,380&lt;/span&gt; for employees during the year ended December 31, 2022 (2021 - $&lt;span id="xdx_90D_ecustom--AdditionalExpensesDueToOptionsGranted_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zgvqINJWhai" title="Additional expenses due to options granted"&gt;106,542&lt;/span&gt;). There were
&lt;span id="xdx_90E_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20220101__20221231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zAuSgxXj6wM8" title="Stock options exercised"&gt;54,500&lt;/span&gt; employee and &lt;span id="xdx_906_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zoZehF07nzr9" title="Stock options exercised"&gt;16,514&lt;/span&gt; consultant stock options exercised during the year ended December 31, 2022 (2021 &#x2013; &lt;span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20210101__20211231__srt--TitleOfIndividualAxis__custom--EmployeesMember_zBhHrh6ZkbXc" title="Stock options exercised"&gt;61,500&lt;/span&gt; employee;
&lt;span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ConsultantsMember_zmnZWuzHzEh7" title="Stock options exercised"&gt;33,201&lt;/span&gt; consultant).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022, there was approximately $&lt;span id="xdx_904_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pp0p0_c20221231_zYVs7sd7EQA2" title="Stock vested compensation non vested"&gt;1,432,960&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_90D_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtM_c20220101__20221231_zq83mTKwFPZh" title="Weighted average period expected to be recognized"&gt;3.9&lt;/span&gt; years.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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, 2022 is $&lt;span id="xdx_90D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_c20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zUtqorZcrtEg" title="Aggregate intrinsic value of vested options"&gt;69,190&lt;/span&gt; (2021 &#x2013; $&lt;span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_iI_c20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zmD7dNcuJc7c" title="Aggregate intrinsic value of vested options"&gt;712,945&lt;/span&gt;). The intrinsic value
of options exercised during the year ended December 31, 2022 was $&lt;span id="xdx_90C_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_c20220101__20221231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_za2zvUSZlYhg" title="Aggregate intrinsic value of vested options exercised"&gt;96,989&lt;/span&gt; (2021 - $&lt;span id="xdx_902_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_c20210101__20211231__us-gaap--IncomeTaxAuthorityNameAxis__us-gaap--CanadaRevenueAgencyMember_zCT1gTYkzEX2" title="Aggregate intrinsic value of vested options exercised"&gt;203,701&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">1</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod contextRef="From2022-01-01to2022-12-31">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_899_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zxwPch9uAy92" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_zmTrlLWlgpve" 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, 2020&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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20210101__20211231_zxnOtr8Fn5xa" style="width: 14%; text-align: right" title="Number of shares, Beginning Balance"&gt;749,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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_zspUpY3EggRf" title="Exercise price per share, Beginning Balance"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_z06EZ0bv7Gac" title="Exercise price per share, Beginning Balance"&gt;4.13&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_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20210101__20211231_zPbqzuSazOP9" style="width: 14%; text-align: right" title="Weighted average exercise price, Beginning Balance"&gt;2.42&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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20210101__20211231_z0JtIv2ZvtT1" 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 style="text-align: right"&gt;&lt;span id="xdx_901_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20210101__20211231_pdd" title="Exercise price per share, Granted"&gt;3.61&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_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20210101__20211231_zrSt66uLRGk2" 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_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Cancelled or expired"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_90A_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_zh6BlQjD887d" 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 style="text-align: right"&gt;&lt;span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zeFDpFUZCxok" title="Weighted average exercise price, Cancelled or expired"&gt;2.30&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-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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20210101__20211231_ziqYSKiISl3h" 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_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MinimumMember_pdd" title="Exercise price per share, Exercised"&gt;0.75&lt;/span&gt; &#x2013; &lt;span id="xdx_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20210101__20211231__srt--RangeAxis__srt--MaximumMember_pdd" 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_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20210101__20211231_pdd" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;&#160;&#160;&#160;&#160;&#160;&#160;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&gt;Balance, December 31, 2021&lt;/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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_pid_c20220101__20221231_zXoB3eETXFcb" style="text-align: right" title="Number of shares, Beginning Balance"&gt;789,500&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_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z2CPNhgPDvFf" title="Exercise price per share, Beginning Balance"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_90C_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iS_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zAmMy8PXbfih" 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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_c20220101__20221231_zivQGeZcGp8h" style="text-align: right" title="Weighted average exercise price, Ending Balance"&gt;2.78&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_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20220101__20221231_zyjNUl12qMsd" style="text-align: right" title="Number of shares, Granted"&gt;981,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_908_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zyilmJUT4Mh1" title="Exercise price per share, Granted"&gt;3.55&lt;/span&gt; &#x2013; &lt;span id="xdx_903_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_z98lS7YJsExd" title="Exercise price per share, Granted"&gt;3.61&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_98E_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20220101__20221231_z2i1Jnf6MrL2" style="text-align: right" title="Weighted average exercise price, Granted"&gt;3.55&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_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_iN_pid_di_c20220101__20221231_zejewlsH9Hr8" style="text-align: right" title="Number of shares, Cancelled or expired"&gt;(13,486&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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z7DzanglMKh8" title="Exercise price per share,cancelled"&gt;1.70&lt;/span&gt; &#x2013; &lt;span id="xdx_90E_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zCEI6SlljaLc" title="Exercise price per share,cancelled"&gt;3.61&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_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zLIKtxrGifU2" style="text-align: right" title="Weighted average exercise price, Cancelled or expired"&gt;2.32&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_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_pid_di_c20220101__20221231_zv8bsJSM4Hul" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Exercised"&gt;(71,014&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_906_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_ztJFxzAjkyvd" title="Exercise price per share, Exercised"&gt;1.42&lt;/span&gt; &#x2013; &lt;span id="xdx_902_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zUckAKWhdlZg" title="Exercise price per share, Exercised"&gt;2.44&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--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_c20220101__20221231_zauAjwQKkhok" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Exercised"&gt;1.98&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, 2022&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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_pid_c20220101__20221231_zre1ahLqdHq7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares, Ending Balance"&gt;1,686,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;$&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_905_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zV4cec7jDHth" title="Exercise price per share, Ending Balance"&gt;1.70&lt;/span&gt; &#x2013; &lt;span id="xdx_900_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zf65g4SxRv9a" 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_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_c20220101__20221231_zCsjq6OTksr9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance"&gt;3.26&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, 2022&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--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_pid_c20220101__20221231_ztFK1xRSx3Ea" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of shares Exercisable, Ending Balance"&gt;680,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;$&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_90F_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z8R8xLcYrbak" title="Exercise price per share Exercisable, Ending Balance"&gt;1.70&lt;/span&gt; &#x2013; &lt;span id="xdx_907_ecustom--SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice_iE_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zoY0f2cYHXy7" 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_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_c20220101__20221231_zbuOYWAvdxqi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Weighted average exercise price, Ending Balance"&gt;2.92&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="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-012021-12-31"
      decimals="INF"
      unitRef="Shares">170000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">3.61</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">3.61</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="From2021-01-012021-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-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">2.30</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-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-012021-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:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">981000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice
      contextRef="From2022-01-012022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">3.55</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice
      contextRef="From2022-01-012022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">3.61</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeGrantedOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">3.55</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">13486</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice
      contextRef="From2022-01-012022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.70</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice
      contextRef="From2022-01-012022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">3.61</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">2.32</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">71014</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice
      contextRef="From2022-01-012022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.42</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice
      contextRef="From2022-01-012022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">2.44</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExcercisedOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">1.98</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">1686000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.70</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice
      contextRef="AsOf2022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">4.13</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">3.26</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">680000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice
      contextRef="AsOf2022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.70</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice>
    <FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice
      contextRef="AsOf2022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">4.13</FSI:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingExercisableOptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">2.92</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="From2022-01-01to2022-12-31">P3Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89B_eus-gaap--ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_z7fpM6eQ7YVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_z4M53mEL2Ge3" 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; border-collapse: collapse; width: 90%; margin-left: 0.5in"&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;2022&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;2021&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: 60%; 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: 16%; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20220101__20221231_zkVa0On95SZi" 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: 16%; text-align: right"&gt;&lt;span id="xdx_908_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_dtY_c20210101__20211231_zhr5t9Jav4Th" 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 style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_902_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zy7dDJfkvWNh" title="Interest rate"&gt;1.76&lt;/span&gt; &#x2013; &lt;span id="xdx_906_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_znpoj4AtCcF7" title="Interest rate"&gt;3.64&lt;/span&gt;&lt;/span&gt;&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;&lt;span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_pid_dp_uPure_c20210101__20211231_zBhyq8BPRq88" title="Interest rate"&gt;1.23&lt;/span&gt;&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 style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zMwDBd9DmNTl" title="Volatility"&gt;66.01&lt;/span&gt;
- &lt;span id="xdx_909_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zzPIwQBGYV2e" title="Volatility"&gt;69.66&lt;/span&gt;&lt;/span&gt;&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;&lt;span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_pid_dp_uPure_c20210101__20211231_z8bHMwqZa0x4" title="Volatility"&gt;63.28&lt;/span&gt;&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 style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_zDWg1O60ipi4" title="Weighted average fair value of options granted"&gt;1.46&lt;/span&gt; &#x2013; &lt;span id="xdx_90F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zw9X1pKbfXJh" title="Weighted average fair value of options granted"&gt;1.65&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 style="text-align: right"&gt;&lt;span id="xdx_90A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zecYNL0YIWLc" title="Weighted average fair value of options granted"&gt;1.23&lt;/span&gt;&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="From2022-01-01to2022-12-31">P3Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="From2021-01-012021-12-31">P3Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="From2022-01-012022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="Pure">0.0176</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="From2022-01-012022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="Pure">0.0364</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.0123</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="From2022-01-012022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="Pure">0.6601</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="From2022-01-012022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="Pure">0.6966</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.6328</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2022-01-012022-12-31_srt_MinimumMember"
      decimals="INF"
      unitRef="USDPShares">1.46</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2022-01-012022-12-31_srt_MaximumMember"
      decimals="INF"
      unitRef="USDPShares">1.65</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2022-01-012022-12-31_custom_ConsultantsMember"
      decimals="INF"
      unitRef="Shares">46000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2021-01-012021-12-31_custom_ConsultantsMember"
      decimals="INF"
      unitRef="Shares">45000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2022-01-012022-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">14850</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2021-01-012021-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">13860</us-gaap:StockOptionPlanExpense>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2022-01-012022-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">62187</FSI:AdditionalExpensesDueToOptionsGranted>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2021-01-012021-12-31_custom_ConsultantsMember"
      decimals="0"
      unitRef="USD">51210</FSI:AdditionalExpensesDueToOptionsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2022-01-012022-12-31_custom_EmployeesMember"
      decimals="INF"
      unitRef="Shares">935000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2021-01-012021-12-31_custom_EmployeesMember"
      decimals="INF"
      unitRef="Shares">125000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2022-01-012022-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">172731</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="From2021-01-012021-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">38500</us-gaap:StockOptionPlanExpense>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2022-01-012022-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">149380</FSI:AdditionalExpensesDueToOptionsGranted>
    <FSI:AdditionalExpensesDueToOptionsGranted
      contextRef="From2021-01-012021-12-31_custom_EmployeesMember"
      decimals="0"
      unitRef="USD">106542</FSI:AdditionalExpensesDueToOptionsGranted>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2022-01-012022-12-31_custom_EmployeesMember"
      decimals="INF"
      unitRef="Shares">54500</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2022-01-012022-12-31_custom_ConsultantsMember"
      decimals="INF"
      unitRef="Shares">16514</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <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:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1432960</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="From2022-01-01to2022-12-31">P3M27D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue
      contextRef="AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">69190</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue
      contextRef="AsOf2021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">712945</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="From2022-01-012022-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">96989</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="From2021-01-012021-12-31_us-gaap_CanadaRevenueAgencyMember"
      decimals="0"
      unitRef="USD">203701</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_806_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zlDgb3kqVX17" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;16.
&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;/span&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_82B_zrxRWQTobka2"&gt;CAPITAL STOCK&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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, 2022, &lt;span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20220101__20221231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember_zbGcHeDSYCyk" title="Stock options exercised"&gt;54,500&lt;/span&gt; shares were issued upon the exercise of employee stock options (2021 &#x2013; &lt;span id="xdx_904_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember_zkak1cLOdVjl" title="Stock options exercised"&gt;61,500&lt;/span&gt;) and &lt;span id="xdx_905_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20220101__20221231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember__srt--TitleOfIndividualAxis__custom--ConsultantMember_zBPPuqLHCocj" title="Stock options exercised"&gt;16,514&lt;/span&gt;
shares were issued upon the exercise of consultant stock options (2021 &#x2013; &lt;span id="xdx_90F_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_pid_c20210101__20211231__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--StockOptionMember__srt--TitleOfIndividualAxis__custom--ConsultantMember_zjQSCK7D8nO2" title="Stock options exercised"&gt;33,201&lt;/span&gt;).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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="From2022-01-012022-12-31_us-gaap_StockOptionMember"
      decimals="INF"
      unitRef="Shares">54500</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_StockOptionMember"
      decimals="INF"
      unitRef="Shares">61500</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_StockOptionMember_custom_ConsultantMember"
      decimals="INF"
      unitRef="Shares">16514</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_StockOptionMember_custom_ConsultantMember"
      decimals="INF"
      unitRef="Shares">33201</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:MinorityInterestDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_802_eus-gaap--MinorityInterestDisclosureTextBlock_z16HPtiFp8V1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;17.
&lt;span&gt;Non-Controlling Interests&lt;/span&gt; &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span id="xdx_82B_z399jgVNmG9h"&gt;NON-CONTROLLING INTERESTS&lt;/span&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; 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 (&#x201c;LLC&#x201d;) that manufactures and distributes golf, turf and ornamental
agriculture products in Mendota, Illinois. The Company owns a &lt;span id="xdx_90C_eus-gaap--SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest_pid_dp_uPure_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zzPQ9lwOzoN3" title="Subsidiary company ownership interest rate"&gt;65&lt;/span&gt;%
interest in ENP Investments through its wholly-owned subsidiary NanoChem. An unrelated party (&#x201c;NCI&#x201d;) owns the remaining &lt;span id="xdx_908_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_uPure_c20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zE66O1R9bEel" title="Related party owner ship percentage"&gt;35&lt;/span&gt;%
interest in ENP Investments. 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 NCI&#x2019;s ownership interest in ENP Investments is recorded in non-controlling interests in these
consolidated financial statements. The non-controlling interest represents NCI&#x2019;s interest in the
earnings and equity of ENP Investments. ENP Investments is allocated to the TPA segment.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; margin: 0pt; 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; 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; 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_903_eus-gaap--PaymentsToMinorityShareholders_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember_zWNtLizmxhfg" title="Partnership distribution to non-controlling interest"&gt;2,506,518&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_896_ecustom--ScheduleOfDistributionsTableTextBlock_z37h3PNMIgF8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zpuE50pys3sk" 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: 0.5in; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_900_eus-gaap--MinorityInterest_iS_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zefn4r6KjVmk" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,561,751&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_980_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zY5i7lcMQxEf" 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: 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_981_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zzBl4gGkY16f" 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: White"&gt;
    &lt;td&gt;Balance, December 31, 2021&lt;/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--MinorityInterest_iS_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zQQ1mv3gv25k" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,602,843&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_988_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zRntTrdpcRxj" style="text-align: right" title="Distribution"&gt;(689,434&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_98E_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_z7Ev46Utgera" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income"&gt;691,625&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, 2022&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--MinorityInterest_iE_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zCwbSJ8pdeC1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance"&gt;2,605,034&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_z8xIyJomh2Wf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2022, the Company had sales of $&lt;span id="xdx_904_eus-gaap--Revenues_c20220101__20221231__custom--StatementEquityComponentsAxisipAxis__us-gaap--NoncontrollingInterestMember_zZI1h3GlA0Cc" title="Sales"&gt;6,667,815&lt;/span&gt; (2021 - $&lt;span id="xdx_90B_eus-gaap--Revenues_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zSiG7pZXJPq3" title="Sales"&gt;4,877,690&lt;/span&gt;) to the NCI, of which $&lt;span id="xdx_90B_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zZJsFg4TnQUe" title="Accounts receivable"&gt;3,634,083&lt;/span&gt; is included within Accounts Receivable as of December 31, 2022 (2021 &#x2013; $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--NoncontrollingInterestMember_zgwUt3QtbcV8" title="Accounts receivable"&gt;2,215,119&lt;/span&gt;).&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;



&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b/&gt;&lt;/span&gt;&lt;/p&gt;

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

</us-gaap:MinorityInterestDisclosureTextBlock>
    <us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest
      contextRef="From2022-01-012022-12-31_custom_EnpnvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.65</us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest>
    <us-gaap:MinorityInterestOwnershipPercentageByParent
      contextRef="AsOf2022-12-31_custom_EnpnvestmentsLlcMember"
      decimals="INF"
      unitRef="Pure">0.35</us-gaap:MinorityInterestOwnershipPercentageByParent>
    <us-gaap:PaymentsToMinorityShareholders
      contextRef="From2022-01-012022-12-31_custom_EnpnvestmentsLlcMember"
      decimals="0"
      unitRef="USD">2506518</us-gaap:PaymentsToMinorityShareholders>
    <FSI:ScheduleOfDistributionsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_896_ecustom--ScheduleOfDistributionsTableTextBlock_z37h3PNMIgF8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zpuE50pys3sk" 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: 0.5in; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance, December 31, 2020&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;&lt;span id="xdx_900_eus-gaap--MinorityInterest_iS_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zefn4r6KjVmk" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,561,751&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_980_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zY5i7lcMQxEf" 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: 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_981_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20210101__20211231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zzBl4gGkY16f" 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: White"&gt;
    &lt;td&gt;Balance, December 31, 2021&lt;/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--MinorityInterest_iS_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zQQ1mv3gv25k" style="text-align: right" title="Distribution to noncontrolling interests, Beginning balance"&gt;2,602,843&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_988_eus-gaap--MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders_iN_di_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zRntTrdpcRxj" style="text-align: right" title="Distribution"&gt;(689,434&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_98E_eus-gaap--NetIncomeLossAttributableToNoncontrollingInterest_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_z7Ev46Utgera" style="border-bottom: Black 1.5pt solid; text-align: right" title="Non-controlling interest share of income"&gt;691,625&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, 2022&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--MinorityInterest_iE_c20220101__20221231__srt--OwnershipAxis__custom--EnpnvestmentsLlcMember__us-gaap--TypeOfArrangementAxis__custom--OwnershipInterestPurchaseAgreementMember_zCwbSJ8pdeC1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Distribution to noncontrolling interests, Ending balance"&gt;2,605,034&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="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:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
      contextRef="From2022-01-012022-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">689434</us-gaap:MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="From2022-01-012022-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">691625</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:MinorityInterest
      contextRef="AsOf2022-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember"
      decimals="0"
      unitRef="USD">2605034</us-gaap:MinorityInterest>
    <us-gaap:Revenues
      contextRef="From2022-01-012022-12-31_us-gaap_NoncontrollingInterestMember84259375"
      decimals="0"
      unitRef="USD">6667815</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">4877690</us-gaap:Revenues>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2022-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">3634083</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2021-12-31_us-gaap_NoncontrollingInterestMember"
      decimals="0"
      unitRef="USD">2215119</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80A_eus-gaap--SegmentReportingDisclosureTextBlock_zU5g56rY6nYf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;18.
&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;/span&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span id="xdx_82E_zZ1MSBhVX2R8"&gt;SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY&lt;/span&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; 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; 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; 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 save 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; 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; 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, also known as TPA&#x2019;s (as shown under the column heading &#x201c;BCPA&#x201d; below), 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; 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; 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; 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; 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; 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_z7Z8btuCkj9k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Year
ended December 31, 2022:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zMRQLNxo7j3a" 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="display: none; 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" id="xdx_496_20220101__20221231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zKvja07INZr4" 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" id="xdx_49D_20220101__20221231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zeeSKFpH48hl" 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" id="xdx_49D_20220101__20221231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zea4rkm3Wkaf" 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 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 id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zC17GTw1IMY" 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 style="width: 14%; text-align: right"&gt;528,462&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;45,312,007&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;45,840,469&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--InterestExpense_zIdrvcu0mnh" 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1746"&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 style="text-align: right"&gt;292,949&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;292,949&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--DepreciationNonproduction_zK6Ybe8yMmNh" 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 style="text-align: right"&gt;33,876&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,243,555&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,277,431&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--IncomeTaxExpenseBenefit_zJphmKrXdUw" 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 style="text-align: right"&gt;18,898&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;126,958&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;145,856&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--NetIncomeLoss_zreNNY1vMem8" 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 style="text-align: right"&gt;(334,525&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;8,047,754&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;7,713,229&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--Segmentassets_zthVwUC0mf54" 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 style="text-align: right"&gt;2,810,091&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;48,777,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 style="text-align: right"&gt;51,587,192&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zD2BpGRFH8xj" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1766"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,981,307&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,981,307&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; 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; 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; 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: 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" id="xdx_49F_20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zCTooJ35VbO2" 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" id="xdx_49D_20210101__20211231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zgrp8wqB2Rpc" 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" id="xdx_491_20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zX69hz1JK1y7" 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 id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zk0IIfgIumab" 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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 id="xdx_40A_eus-gaap--InterestExpense_zUu6FD8UuKPd" 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1774"&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 style="text-align: right"&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 style="text-align: right"&gt;199,930&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--DepreciationNonproduction_zH0EPE47hbhd" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;965,935&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_zy6QWXiORxif" 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 style="text-align: right"&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 style="text-align: right"&gt;2,332,115&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;2,356,499&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--NetIncomeLoss_zWCfIrszfB58" 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 style="text-align: right"&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 style="text-align: right"&gt;4,663,251&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;4,294,257&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_ecustom--Segmentassets_zowGpOOAzbdk" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;39,551,270&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zG3wEH909EC2" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1794"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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 id="xdx_8A5_zFEaccoJT6h3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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_zvF7m47amyM2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B6_znzandgoWMmi" 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" id="xdx_49B_20220101__20221231_zTd2rk0hK9de" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_498_20210101__20211231_zzNozA9Ek9oa" 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;/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_40E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__country--CA_zPqskhkNCZr7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&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 style="width: 16%; text-align: right"&gt;552,123&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;525,900&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zA91bsqjuLW8" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;45,288,346&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;33,890,435&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--RevenueFromContractWithCustomerExcludingAssessedTax_zU0c1GmPLfMi" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;45,840,469&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;34,416,335&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_zD8R4RTEtTd9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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_894_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zSM0dntXikqb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_z7JD6HCLxJsl" style="display: none"&gt;SCHEDULE
OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE&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" id="xdx_49C_20221231_z2j1FRu4OSO" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_49D_20211231_zkepl3va18A8" 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;/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_409_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--CA_zIVj4htYxw6f" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&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 style="width: 16%; text-align: right"&gt;150,890&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;191,752&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--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--US_zocDXUOKG2pb" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;14,699,896&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;10,105,202&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_40A_eus-gaap--NoncurrentAssets_iI_zf83vDN2usac" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;14,850,786&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;10,296,954&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_zPbCa3voqd6i" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; 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_907_eus-gaap--AccountsReceivableNet_iI_c20221231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zbCp893V5Wcc" title="Accounts Receivable, after Allowance for Credit Loss"&gt;27,775,617&lt;/span&gt; (&lt;span id="xdx_90C_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--ThreeCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zlTQQ7EXmga" title="Stock option exercise percent"&gt;61&lt;/span&gt;%) of sales made in 2022 (2021 - $&lt;span id="xdx_90B_eus-gaap--AccountsReceivableNet_iI_c20211231__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember__srt--MajorCustomersAxis__custom--ThreeCustomersMember_zpmQKjzKByg5" title="Accounts Receivable, after Allowance for Credit Loss"&gt;16,917,947&lt;/span&gt; or &lt;span id="xdx_90D_ecustom--StockOptionExercisePercent_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--ThreeCustomersMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zjTnnOfZQk5j" title="Stock option exercise percent"&gt;49&lt;/span&gt;%).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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:SegmentReportingDisclosureTextBlock>
    <us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_898_eus-gaap--ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock_z7Z8btuCkj9k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Year
ended December 31, 2022:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zMRQLNxo7j3a" 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="display: none; 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" id="xdx_496_20220101__20221231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zKvja07INZr4" 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" id="xdx_49D_20220101__20221231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zeeSKFpH48hl" 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" id="xdx_49D_20220101__20221231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zea4rkm3Wkaf" 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 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 id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zC17GTw1IMY" 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 style="width: 14%; text-align: right"&gt;528,462&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;45,312,007&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;45,840,469&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--InterestExpense_zIdrvcu0mnh" 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1746"&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 style="text-align: right"&gt;292,949&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;292,949&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--DepreciationNonproduction_zK6Ybe8yMmNh" 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 style="text-align: right"&gt;33,876&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,243,555&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,277,431&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--IncomeTaxExpenseBenefit_zJphmKrXdUw" 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 style="text-align: right"&gt;18,898&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;126,958&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;145,856&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--NetIncomeLoss_zreNNY1vMem8" 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 style="text-align: right"&gt;(334,525&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;8,047,754&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;7,713,229&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--Segmentassets_zthVwUC0mf54" 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 style="text-align: right"&gt;2,810,091&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;48,777,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 style="text-align: right"&gt;51,587,192&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zD2BpGRFH8xj" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1766"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,981,307&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,981,307&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; 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; 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; 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: 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" id="xdx_49F_20210101__20211231__srt--ProductOrServiceAxis__custom--EWCPMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zCTooJ35VbO2" 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" id="xdx_49D_20210101__20211231__srt--ProductOrServiceAxis__custom--TPAMember__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zgrp8wqB2Rpc" 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" id="xdx_491_20210101__20211231__us-gaap--StatementBusinessSegmentsAxis__custom--SegmentMember_zX69hz1JK1y7" 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 id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_zk0IIfgIumab" 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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 style="width: 14%; text-align: right"&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 id="xdx_40A_eus-gaap--InterestExpense_zUu6FD8UuKPd" 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 style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1774"&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 style="text-align: right"&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 style="text-align: right"&gt;199,930&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--DepreciationNonproduction_zH0EPE47hbhd" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;965,935&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_zy6QWXiORxif" 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 style="text-align: right"&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 style="text-align: right"&gt;2,332,115&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;2,356,499&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--NetIncomeLoss_zWCfIrszfB58" 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 style="text-align: right"&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 style="text-align: right"&gt;4,663,251&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;4,294,257&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_ecustom--Segmentassets_zowGpOOAzbdk" 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 style="text-align: right"&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 style="text-align: right"&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 style="text-align: right"&gt;39,551,270&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_zG3wEH909EC2" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1794"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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 style="border-bottom: Black 1.5pt solid; text-align: right"&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;

</us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">528462</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">45312007</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2022-01-012022-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">45840469</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:InterestExpense
      contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">292949</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2022-01-012022-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">292949</us-gaap:InterestExpense>
    <us-gaap:DepreciationNonproduction
      contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">33876</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">1243555</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2022-01-012022-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">1277431</us-gaap:DepreciationNonproduction>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">18898</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">126958</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-012022-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">145856</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">-334525</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">8047754</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">7713229</us-gaap:NetIncomeLoss>
    <FSI:Segmentassets
      contextRef="From2022-01-012022-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">2810091</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">48777101</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2022-01-012022-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">51587192</FSI:Segmentassets>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2022-01-012022-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">1981307</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2022-01-012022-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">1981307</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">420811</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">33995524</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">34416335</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">199930</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2021-01-012021-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">199930</us-gaap:InterestExpense>
    <us-gaap:DepreciationNonproduction
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">40247</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">925688</us-gaap:DepreciationNonproduction>
    <us-gaap:DepreciationNonproduction
      contextRef="From2021-01-012021-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">965935</us-gaap:DepreciationNonproduction>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">24384</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">2332115</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">2356499</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">-368994</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">4663251</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">4294257</us-gaap:NetIncomeLoss>
    <FSI:Segmentassets
      contextRef="From2021-01-012021-12-31_custom_EWCPMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">1929537</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">37621733</FSI:Segmentassets>
    <FSI:Segmentassets
      contextRef="From2021-01-012021-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">39551270</FSI:Segmentassets>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31_custom_TPAMember_custom_SegmentMember"
      decimals="0"
      unitRef="USD">782219</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31_custom_SegmentMember"
      decimals="0"
      unitRef="USD">782219</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89F_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zvF7m47amyM2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&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"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B6_znzandgoWMmi" 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" id="xdx_49B_20220101__20221231_zTd2rk0hK9de" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_498_20210101__20211231_zzNozA9Ek9oa" 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;/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_40E_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__country--CA_zPqskhkNCZr7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&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 style="width: 16%; text-align: right"&gt;552,123&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;525,900&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_hsrt--StatementGeographicalAxis__custom--UnitedStatesandAbroadMember_zA91bsqjuLW8" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;45,288,346&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;33,890,435&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--RevenueFromContractWithCustomerExcludingAssessedTax_zU0c1GmPLfMi" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;45,840,469&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;34,416,335&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="From2022-01-012022-12-31_country_CA"
      decimals="0"
      unitRef="USD">552123</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31_country_CA"
      decimals="0"
      unitRef="USD">525900</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2022-01-012022-12-31_custom_UnitedStatesandAbroadMember"
      decimals="0"
      unitRef="USD">45288346</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="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">45840469</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">34416335</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_894_eus-gaap--ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock_zSM0dntXikqb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_z7JD6HCLxJsl" style="display: none"&gt;SCHEDULE
OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE&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" id="xdx_49C_20221231_z2j1FRu4OSO" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;2022&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_49D_20211231_zkepl3va18A8" 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;/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_409_eus-gaap--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--CA_zIVj4htYxw6f" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&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 style="width: 16%; text-align: right"&gt;150,890&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;191,752&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--NoncurrentAssets_iI_hsrt--StatementGeographicalAxis__country--US_zocDXUOKG2pb" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;14,699,896&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;10,105,202&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_40A_eus-gaap--NoncurrentAssets_iI_zf83vDN2usac" 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 style="border-bottom: Black 1.5pt solid; text-align: right"&gt;14,850,786&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;10,296,954&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="AsOf2022-12-31_country_CA"
      decimals="0"
      unitRef="USD">150890</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="AsOf2021-12-31_country_CA"
      decimals="0"
      unitRef="USD">191752</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="AsOf2022-12-31_country_US"
      decimals="0"
      unitRef="USD">14699896</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="AsOf2021-12-31_country_US"
      decimals="0"
      unitRef="USD">10105202</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">14850786</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">10296954</us-gaap:NoncurrentAssets>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2022-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember"
      decimals="0"
      unitRef="USD">27775617</us-gaap:AccountsReceivableNet>
    <FSI:StockOptionExercisePercent
      contextRef="From2022-01-012022-12-31_custom_ThreeCustomersMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.61</FSI:StockOptionExercisePercent>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2021-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember"
      decimals="0"
      unitRef="USD">16917947</us-gaap:AccountsReceivableNet>
    <FSI:StockOptionExercisePercent
      contextRef="From2021-01-012021-12-31_custom_ThreeCustomersMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.49</FSI:StockOptionExercisePercent>
    <us-gaap:SubsequentEventsTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80C_eus-gaap--SubsequentEventsTextBlock_zdClwWx3yPDc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font: small-caps 10pt Times New Roman, Times, Serif"&gt;&lt;b&gt;19.
&lt;span&gt;Subsequent Events&lt;/span&gt;. &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; display: none; margin: 0pt; text-align: justify"&gt;&lt;span id="xdx_82F_zZREj6Lhy7Fj"&gt;SUBSEQUENT EVENTS&lt;/span&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; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company issued &lt;span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20230101__20230331__srt--TitleOfIndividualAxis__custom--EmployeeMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zmbwWQnNm4kl" title="Stock options granted"&gt;8,000&lt;/span&gt;
shares to employees and &lt;span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_pid_c20230101__20230331__srt--TitleOfIndividualAxis__custom--ConsultantsMember__us-gaap--SubsequentEventTypeAxis__us-gaap--SubsequentEventMember_zncavUHT15xg" title="Stock options granted"&gt;1,272&lt;/span&gt;
shares to consultants upon the exercise of stock options in the three months ended March 30, 2023.&lt;/span&gt;&lt;/p&gt;
</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2023-01-012023-03-31_custom_EmployeeMember_us-gaap_SubsequentEventMember"
      decimals="INF"
      unitRef="Shares">8000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="From2023-01-012023-03-31_custom_ConsultantsMember_us-gaap_SubsequentEventMember"
      decimals="INF"
      unitRef="Shares">1272</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>99
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5
MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$%     @
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
MSK%\NP)^NR/8.ET3/F="L"#=7%'B4IZ<(#]?,"9V.\D7[/\?0O<_4$L#!!0
M   ( !F ?U;%6JY*6P<   L?   8    >&PO=V]R:W-H965T<R]S:&5E=#(N
M>&ULK9E];]LX$H>_"N%=++I 6O-%E,@T,="FNWL%>GO%YO;V;\5F8J&RZ!7I
MO-RGOZ'L2K8X8II#"[3URPS]&W(XSY"Z>+#M%[<VQI/'3=VXR]G:^^WY?.Z6
M:[,IW1N[-0U\<VO;3>GA;7LW=]O6E*O.:5//.:7Y?%-6S6QQT7WVN5U<V)VO
MJ\9\;HG;;39E^_3>U/;A<L9F7S_XH[I;^_#!?'&Q+>_,M?%_;C^W\&[>C[*J
M-J9QE6U(:VXO9^_8^970P:&S^$]E'MS1:Q)"N;'V2WCS<74YHT&1J<W2AR%*
M^._>7)FZ#B.!CK\/@\[ZWPR.QZ^_COYK%SP$<U,Z<V7KOZJ57U_.U(RLS&VY
MJ_T?]N$?YA"0#.,M;>VZ?\G#P9;.R'+GO-T<G$'!IFKV_Y>/AXDX<F#9A ,_
M./!O=1 '!]$%NE?6A?6A].7BHK4/I W6,%IXT<U-YPW15$U8QFO?PK<5^/G%
ME6V<K:M5Z<V*O"_KLED:<AV&<^0U^?/Z WGUX\\7<P\_%1SFR\.P[_?#\HEA
M/YCE&R+8&>&4<\3]ZMO=V:G[' +LH^1]E+P;3TQ%N6M;TW@LCKUCACN&373N
MMN727,Y@ESC3WIO9XJ<?6$[?8E%]I\%.8A1]C"(U^N*J=&LLP+V7[+S"IKY?
MY(Q)JO7%_/Y8>VPG"P:K5_1V)[*R7E:6E/5OTVY@7VVMJ[S#].W=\Z/?+6CX
M,Y(7FX$X*;()>;*7)Y/RWBV7=M= LK=F::K[\J8VY-7OUAN2H6DO(QDZR[22
MQ4AN;%<PK@77N-R\EYLGY7YL[B&/;5L9=Y I49EY/%M9QG0FQM,:&VI)@0$2
MUUGT.HNDSL^MV9;5BIA'X(TSZ,(7T4\+6%(]GLG8+,LXRQDN4/4"53HMK2]K
M*+!=72"E<P;/3A6+A*V3Y4J,9,:&7"BJ:3ZQXKH7JI^924!VZY_.B/E[5VTW
MG=QF16H#\%K;>N7.2 .XWV=#CF:#CA>YH)HK-8HAMLNT8 43> B,#I"AZ2
M+V&3[446.%"20^#%DZ!HH7'RBUQ/K ,[(B5+!M&U.,3>DITSAXPY!"3P@%BL
M(R]XX.')K"-VG!4\GZAL;( >2_(&BH4OF[LJE+03N0J7RV,968948LPP/RW9
MIX('@K$TPC[9YH[X8V <%&M<L8B$*)E%<I^Q.M4Z8(VEN18JL?.;H[1F%%<9
MDTMF4BDMQT(Q0YY1-J5U8!Q+0^XW:U</55VGUS]&5N K+R*=SQN>ZAS@QM)T
M^V!N#13D%?'EXSYEOT[MQ Z+Z<6+C*MQ:X/8,9[KJ0TV0(ZE*;>'R+M)>+"8
M79))53 =U0 $AEI*QHNIQ1] Q]3_V_NR)"-?VOQ^K]%.XQPXR=*@[#NY;?D4
MVC@TX)APJA":9N/EB.T85R)3.;X:?" A3Y,05+8[R/"Z*F^JNO(5WAOQF&%:
M0IN9CX0B=IDL:,XG= ZPXVG8]5NQ-=!Q[M#9Y#&XA"J*?-P:87:9ID>S?BKR
MZ%3W'."6=F-"M3#)9><QL3)82R''K, ,9<Z$GEKW 6T\C;;KM6W]GFWAJ]!&
M+&%ZJ[[",;3"\1A>7#$E-1LK1PP%I8I-M#U\ !U/@^Y0/\@6 @@7+Z"\ZSW[
M%'Y*=D$<H9JB*IIYY!A8%&P"*7Q 'T^C#U-_U&7<]///<?78.:[(V;A^8W9:
MR&(JQ0<D\C023\\ISU4-A'-44,[BNH&<^Q0DC)Q*](&)/,W$3R_)C9AZC&J6
M1;.+V 4\3E6Y@8T\?0KLJUS55Y)(^D3OP>,#GX22)L>]!V('QUPV6:$'WO$T
M[SZ])(UCGLE,Y%D^[NT00R8+2*&)1!8#^$0:?/M$_I1.8($<W7+ ;GQHPBR9
M O;I*:4#^@1+-DS7WBZ_A).U:=U//R@XB[TEO\#9VS^ADI,<?6D/];U&.PU]
M *I( _6JW%9AF5R8@J\IE?],WNT\\*OZKUF=$TG/X*@7_A+8,QNHJ6Y=@ACR
M4/DU*8'#+;DOZUW'N!_I&TH9,>5R_9:PWA'$'S;>,[Y[5_+1N= TA7L/N_,.
MCK6KJKD[AW0_RWA^!L=/\BI<%7>?""G/> :J3^2A:Q?CGG$8<)QKF!G\RD2B
M'5W8/G=CNY_MJB'F<6F<"U'W4X *CBG/"LF%R,8;&;/,M8(]KR9D#PV!2#<$
M__)KTX;)A55<AP<Z]U#OK<-G.,;Z:T5AET:WSXAA4832,R%WZ #$LS>\N\VN
M[AYPF+)M('%PJ3'"F=04>K_QZ0"Q5 KHF4]I'6@OOH7V#BE IBM I'O+WL+L
M-[ZU-?C?0?H !8Q#3W@BYKS@N1!:1$F.G*4EH\%X(JJA)1#IEN!WV[S&!/<7
M)_B%H(BI#QM=4A&M!VK(53:E?.@/Q+?<$K\0" CP88LJ78Q[7L22%P6563'1
MA8FA.1#IYB"B;5<[7QB(CI\(X;<7B.7$[<7\Z$EE>$S\S[*]JQH')XI;<*5O
M"ABCW3]YW;_Q=ML]O+RQWMM-]W)M2@@@&,#WMQ8RZ/ F/ _MGW\O_@=02P,$
M%     @ &8!_5E&(BK:Y @  AP@  !@   !X;"]W;W)K<VAE971S+W-H965T
M,RYX;6RM5EUOTS 4_2M60 BDT7PU:3722%NG"1Z0JE7  ^+!36X;:XX=;+<=
M_'JNDS1JMFQK)?K0^..>XW.N[=PD>ZGN=0%@R$/)A9XYA3'5I>OJK("2ZI&L
M0.#,6JJ2&NRJC:LK!32O025W \^+W9(RX:1)/;90:2*WAC,!"T7TMBRI^G,-
M7.YGCN\<!N[8IC!VP$V3BFY@">9;M5#8<SN6G)4@-)."*%C/G"O_<CZU\77
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
MO>E>KI5<J,8:P/=+#9#=O[$7.#ZT-?L+4$L#!!0    ( !F ?U;K[:# Q@@
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
M+(8IEN=87'2/A N'LP5[*U?2.="<6==$$J%UR%HB<O/G+"-R([#+$#![;[6
MH#-,01&_>ODS0_Z#0^"D=45IDS[@![OY.&=SZ5J8;["4BO;APZP+;&_0U8><
M$>K9*?84D]'X_" [)3*N)=68RM"TKJPP'JE\G#:<]L?C4?_T;,2.3]GDA(U'
MHP0RF1R [+<)^&)<")4*S$Y'[-5X</:2G0^.CPD.(-!AD<O<,?NFJ$)N<,HT
M?0Q(TZ[0UZV3T1+GS0,..-](4F+8,3K;5,DU2425%?,XG&(8<L,;ZY(:$,D6
MDG4#]LD@0&=%6X8^>W\SO5],/]^AV5^>O$':?<8GM5O'6B0!V?9;5==4@L9B
M1D<::$5RB()$[C#LL^4N.B?#'_E'T35,?#2(*RQ8G(@!9RYR7>'@D:Y ;S72
M\1@ST>!,6[.&+5:5%806<)Q&(H$XP#/TUI8R 4LCW9J6OK2*= @7=*A')_1>
M2)_6#_P09L<IV144[H!-C24GCUG[8WI_<W>0-O9]VA((S0Z,J90 ("KGU#H]
ME1S"\$C&EY:7.'1!(+5#FFQ6N8/D%E0%'[.6@+5%NXE64EP'21Y DYWNZ-UC
M/-]0R7' /1ET*M3>'HK-'Z@M.S["*&PQ 8I'R6%":/5/KCAN%AH2T3L.=3@:
MD6RI+"W4$@&]H( P0E?$R.UG!'A"2;EK[^=3_SCVDIXYLK"$0([ .V"_/V0I
MBI6S=0P$/5PC.GC4=DWL&(=F@5XJT6<?CA(IA>%'7J@$@*5RU:V.XQU,<+)L
M,$J Y9R-E[6H=8"E 933V:B&GK<J5'NE2!I3LJW[73_V4W)":G!021 "%R'J
M\$R#HHNI;^/@\*R+DHIK*APX("E=S#-ED814PVA#<*6S#=LIJ44L5Y&#VF,E
M,6! 1E56%NLX1033O#7"[= 'B&9-L[,?)=+6I!6BM-=(Y-Y@PN*6(2)I9!K$
MF5 ;E1+TO6Z*L+7,*.0#R$\K+S7UVJFL?:20ARSQ;F=4>:SN*@88?1>XC"]Q
M8W_8]ZNQF).,KCXJ3AE4#D-WHUR+F.*07%$Q](Z!/^Y,P!('@IM]^GS[]FC\
M*HNNSS# J0G!"W9Q)FTI\/B5P"J)B5LAZP@=<1)ILN>K%2[FL)>(UM8J]\[C
M=6'?1=SA6I#.&%SPM<B>LK90NPQ0,H%S'IDQ%#1=;_91USQW:LGC5 CP7?C*
MHMO6$A&G*2CR=1O5%/CP,= _KB< (%VLD3%GZ,2$]9JT'P]YZ](!2_JGA3BI
MX]R.74B.C:3QA7SO2((H=XQDV7I<U;SO%X\!(XP\AJS+0<;+D(WC-OE;'8Z?
M)"S1YN,B'HG)Q=XN%^HQ%4A+:QX,$L4X,<$S'0I%.D[I->8VQI'W\=82CQFM
M^!+L2<\UC2="UM*L4=38Z.A^1QV;G'JY/X;C_6+ GKH-#P\^6&KJ)OHLPWBA
M"V#Z=NE6NR^_:?K@>31/GXV_<;>FSM=RA:VCP<O3'G/I4RP]!-O$SY^E#:AN
M_ E)"NG( .]7%K,C/Y"#[GOXZE]02P,$%     @ &8!_5I>\Y'ZI&@  &4T
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
MUL'*H3E8*X4I]C9YAW:?I11Y:;B2$N_>5"0E7;'9IY$]&A\U&<7:E9+Y:G^
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
M*$NS1L"!2$7E.([HE'.Y:YRFB[5F21+S74S;@F.-Y'JHKXF'##$IBB,ASE>
MW>'OC(::AR%SM8#D?<6D0L!LJ*O/AHN[1$=P=-;+K-A/C A3328,R8BJ2:TO
M<VT\?.-YPX8<-X4A:'(!]1XS21 I ]G.T9?ZJ;W'^[&9MR))_Q0?4WQ[F!#H
MZ4#7$2NS=+I31T'!)BA$W!5&;GW%BW.9&(H\3@(.5"5L?0AOY?$>^\[!2G5-
M^HFN$1G%2TQ(-K(TTOQB.Q!!.O#]V4AP/ [J01Q"A>4KJ$J,;.>Q#7KG2QFC
MO:H:%2 @8Z*?,!K\JNU796$6QAEE13X2WN2> U7-F8BT4>D;X@;R%:SCJ"(6
MSG3-T&9BD<<PQ;=/ O"9\DF3'Y%">I;<$KO7,@4?5QXP;]K:3M)[WT+':*A!
M+.3"9'S4UE 6UKNYX:KA=BZ!Y+K6/)7@LL>3F?<AT\5S0#QPJF];>9\19N*@
MBH<>HVT2V^Y^Y&#>>;B:(*QLNU*IT^F"T@#.$4 S+7=>+]8S3&.Z%M_8RK?=
MU)JP=R=?(GJ>K%6)1XB%9^\4HH'<YD77GH0*1?I&:GA-U;_A0R;D! T6.(X8
M[$C!6GYY88TY)4QK)Y4.FZG)JZC%V$1*,)R6]B>>Y[_D3%SP-2;^(\HK6C-G
MO]WK>$TZ/<S#H/CIBRRU++T;;:W"$!-%,__$5O<6VSP[IZ\3PSNX6/O0&AV@
MY(IJ$RNT4,Z>36:['S]K1)Z1'1J;I^G&+%4I6%97/R\S%<=Q)N_(Y.,XC-]Z
M#T6G\/,$E%PN_JU7/I]Q"=.#9T/3?10(,_LR#*&0HIZPHJH'%#78D:^..5?=
M:,HZ#NB,W;($BW9JB*)Y0?]FE4"64-O](@$+&R>3LL##F\Y4N& 4Z)^?OCI\
MJ5:G+]7R*B*23:>IDB$^_+ *QGAZO-U6F,EOTI#JMWB5?WOP<RHH7U3XD8VM
M:^*"_O&M/KS3,9H5'!T46GCAO5(0LN4T9+2PK,3CNUG,?:A,J7&IYNN-6=>5
MB#]L$QH,62C_A'=)6B/IR1*]MCL3[)";L^4&(SZJ/X%F\NJ/](6E ,<_;"%H
MQ<931 IZ'_'@40)6KFY^$'"AYWX!Z6GR<U7DBM?\HUQ6RL+RRU7AV_"[7Z_E
MYZ[B<OG1L)])AY&RU&9%6T\75\^>Z$Y^B$L^].V.?_QJV?;D]_E/_+2&Z;"
MGJ_:MO<?<$'X-;3O_Q]02P,$%     @ &8!_5C*>NCB(!0  T0P  !@   !X
M;"]W;W)K<VAE971S+W-H965T.2YX;6R-5UMOXCH0?L^O&+&KHZZ40A(NI3<D
MVM*S2/2B4L[1/IK$@+5.G+5-*>?7GQGG4MJE:%^*;_/--S.?)^[%1NF?9L6Y
MA==49N:RL;(V/VNU3+SB*3--E?,,=Q9*I\SB5"];)M><)<XHE:TH"'JME(FL
M,;AP:X]Z<*'65HJ,/VHPZS1E>GO%I=I<-L)&M? DEBM+"ZW!1<Z6?,KM+'_4
M.&O5*(E(>6:$RD#SQ65C&)Y==>B\._"/X!NS,P:*9*[43YJ,D\M&0(2XY+$E
M!(8_+_R:2TE 2.-7B=FH79+A[KA"OW6Q8RQS9OBUDO^*Q*XN&_T&)'S!UM(^
MJ<UW7L;3);Q82>/^PJ8X&[8;$*^-56EIC Q2D16_[+7,PXY!/_C$("H-(L>[
M<.18WC#+!A=:;4#3:42C@0O562,YD5%1IE;CKD [.YB,AM/1]*)E$8M66G%I
M=U7819_8A1'<J<RN#(RRA"?O 5I(HF8254RNHH.(-SQN0COT(0JBZ !>NXZL
M[?#:GT7&L5AF7V2%76>_'=V",Y.SF%\V4.:&ZQ?>&/SU)>P%YP=8=6I6G4/H
M!_)]T&X_JW;3*Z*$ A:&<:S6F179TF-9@I<F5YIFL%R+A&4Q![S&( L;S7^M
M!6*!73%;+<XY\!<FU\SR! @CELP8L1 T-<"%77$-V!,T<\ (MQ"9@ZX0M@A(
M,V,X=S3VV/E@&)XXMMN<$T:"1&);0A'N[V!*-^'VC?T&$<%RG1I88C?"$<61
M 0HS=<+TG>6U2G.6;3V$5SHQ;DUSZ<+3=&./U>)X;3@<_?6E'T7!^=/#S(W"
M\V](W&!;I!"<4U!S*9:LZ";60;E:9!8H9;B_* _F;(N-RQI0+XX7=TSK:J5L
M"R*+Y3K!@HA7HH*GF01N8B8+!YAWI(51X!;?X)[*:=TX.BW*&4%BOMSI:M.5
MDFF$Q7:G-"*+S"K'(.$[!M[O5#<KCF'EN5:Y%IB?)CR_Y8]2$IZ<FYW*EW4@
M9V4LY PP?T7>D'KA00HV%U)8@?6.UYI"!:=+I/&6V^K4]E@J1">NU2F"I0@8
MJMNQ(?<QAJLDJIHJ.<>LD01='S3-'1)T!\H:V3WA. EXF"&2 *IGC<U,2^>@
M*#[=ET*!1))8^? [:<$_.MJ1"J*G["?_F&^FA2$_"ZU2,O'<_OZLE[E.%&3*
M(M<UDW*+XE,O B7$@#[' E?J&L\E5B7-I8B%!2P8/R<7^,%#35  J#0K\)OF
M-+LG,1Z65/.T4.5<:>QRQ)600!C*5D)Q)<*XAK.3HCH^^E8FX*I7O!W<M7EA
M0CIV;-<(ZXI&L7,(224^KX9W?IW3#3:3;K/KMJT#FM/#HGQ4B/]X><5WK_;'
M:UQ+K:[NEC.-38J^9(#?(9[.\=I6WR)GB8/P#*:SN[OATP_OX1:>QG]_?SY^
MN#V>34<PG$Y'SS"\ORD:,4S&PZOQ9/S\PW.O'$KR#!T/G22]JU*MF(*/S@+X
M"IU^VP_#MG=#@HI%D;BCJ-?U^YT>?#MD'J(YUL^/>B<?S+N!'W2ZAZTCM Y[
M:!U%1:>"296I/^5<F&'/0:T9"_P5'X^X$$5^T#WQ'BMM'$7]$_\T:/]Y-)\
M]_UNK[>#V^W[O3#\\S"G*VPQQ^^:S5= D* ?>!/L0^^WPN#4#SN1]ZSH6M0H
M,,LJI?+$*_K;VRTG_:'0)*K4H(*NOX]N9I,126AV?S.>7C_,[I]'-_ TNG^&
MQ^&/._R=>DBS7?' <0>ZIWXW<N,N]$(?L_[&X@2#QOD8;W#LM%:QH2M[%(9^
M^[2/*9F\%[]_*#&P[ZG3VGEFIEPOW6/:@'-5O#CKU?J]/BR>J6_'B\?^'=-+
MD5%C6Z!IT#SI-HH[6TVLRMVC=:XL/H'=<(5-CFLZ@/L+I6PU(0?U?S&#_P%0
M2P,$%     @ &8!_5NF\//5_ @  B@4  !D   !X;"]W;W)K<VAE971S+W-H
M965T,3 N>&ULC911;]HP$,??\RFL;)I6*2*)$PKI(%*@5*W4KA6TW<.T!Y,<
M)*H3,]LIW;>?[83 )$![(6?[[G?_L[D;;1E_$SF 1!\EK<38SJ7<7+FN2',H
MB>BQ#53J9,5X2:1:\K4K-AQ(9H)*ZF+/NW1+4E1V/#)[3SP>L5K2HH(GCD1=
MEH3_F0!EV['MV[N->;'.I=YPX]&&K&$!\F7SQ-7*[2A944(E"E8A#JNQG?A7
MDU#[&X?7 K;BP$:ZDB5C;WIQEXUM3PL""JG4!*(^[S %2C5(R?C=,NTNI0X\
MM'?T&U.[JF5)!$P9_5%D,A_;0QMEL"(UE7.VO86VGK[FI8P*\XNVC2\.;)36
M0K*R#58*RJ)JON2CO8>#@*%W(@"W =CH;A(9E==$DGC$V19Q[:UHVC"EFF@E
MKJCTHRPD5Z>%BI-Q,IT^OGQ_7J#Y;#J[>TTF][.1*Q58'[MI"YDT$'P"XF/T
MP"J9"S2K,LC^!;A*42<+[V1-\%GB-:0]%/@.PA[&9WA!5V9@>,$)WAQ2*-[)
MDH) /Y.ED%S]'7X=J[3AA,<YND6NQ(:D,+95#PC@[V#'7S[YE]ZW,RK#3F5X
MCOZ_CW$6<EQBV+.2-&5U)07:WP7:);3V"=%B>CN[?KF?68\WZ(@@2[^(?A9_
M3^1[XF<4.8,@<OR^I^R!$WJ!$WA#*Z&J_4F5JOM7DP1EK%[*54U55[:,KW@8
M.3@*T(4R!X$3#2)T83TS2:A%3B0*P\@9]@<FD8\C)\ 1.O8,[D%_E,#79@H(
M9*!-JW2[W:!)FO[:NS=3ZH'P=5$)1&&E0KW>H&\CWG1^LY!L8[IMR:3J76/F
M:E@"UP[J?,68W"UT@F[\QG\!4$L#!!0    ( !F ?U:;"9O4?0(  %4%   9
M    >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;(54;6^;,!#^SJ^P6+5/*( A
M).T2I.:E:J6^*6D[3=,^.' )5HW-;*>T_WXV)"R3TNP+^,[W//?<V>=1+>2K
M*@ T>B\95V.WT+JZ\'V5%5 2U1,5<+.S%K(DVIARXZM* LD;4,E\' 2)7Q+*
MW734^!YE.A);S2B'1XG4MBR)_)@ $_78#=V]8T$WA;8./QU59 -+T,_5HS26
MW['DM 2NJ.!(PGKL7H87D]C&-P$O%&IUL$:VDI40K]:XR<=N8 4!@TQ;!F)^
M;S %QBR1D?%[Q^EV*2WP<+UGOVIJ-[6LB(*I8-]IKHNQ.W11#FNR97HAZFO8
MU=.W?)E@JOFBNHV-L(NRK=*BW(&-@I+R]D_>=WTX  R#3P!X!\"-[C91HW)&
M-$E'4M1(VFC#9A=-J0W:B*/<'LI22[-+#4ZG-_<O\_NGA\7-?#GRM2&T;C_;
M@2<M&'\"#C&Z$UP7"LUY#OF_!+Y1TLG!>SD3?))Q!ED/1:&'<(#Q";ZH*R]J
M^*+/RN-OP+60'VA&5<:$VDI /R]72DMS'WX=*[DEC(\3VAFY4!7)8.R:(5 @
MW\!-OWX)D^#;";EQ)S<^Q?Z_TS@)/BZMWW/V/:"@T$$"M)Q>SV?/MW/GX:KS
M_W!LXVWW0V<JRHJ!AAQMA,@5.D.1-PP2+XF39AV' V^(SYT%J<V-U" I80H1
MGIL)KRIFTX6!EX38&PQCE'C!,/;"0>(\"4V80[N3.4-A;,C.O3@*C''N]0/L
M!4$?'6NH?W#52Y";9J 5RL26Z_;6=][NS;AL1^5O>/O@W!&YH5PA!FL##7J#
MOHMD.\2MH475#,Y*:#.&S;(P[QY(&V#VUT+HO6$3="]I^@=02P,$%     @
M&8!_5I3@@&AB!   A0D  !D   !X;"]W;W)K<VAE971S+W-H965T,3(N>&UL
MI5;);N,X$+WK*PAW(R<BYB*)9!8#3NQ&&G 23Y89# 9S8&3:%EH2W105)W_?
M1=E6G(&30\]%)*6JXJOWJD2>K:W[42^-\>BE+*KZO+?T?G72[]?9TI2Z/K8K
M4\&7N76E]K!TBWZ]<D;/6J>RZ#-"TGZI\ZHW.&O?3=W@S#:^R"LS=:ANRE*[
MUPM3V/5YC_9V+^[RQ=*'%_W!V4HOS+WQCZNI@U6_BS++2U/5N:V0,_/SWI">
M7,3!OC7X,S?K>F^.0B9/UOX(B^^S\QX)@$QA,A\B:!B>S:4IBA (8/S<QNQU
M6P;'_?DN^K<V=\CE2=?FTA9_Y3._/._)'IJ9N6X*?V?75V:;3Q+B9;:HVR=:
M;VQCV#%K:F_+K3.LR[S:C/IER\.>@R0?.+"M VMQ;S9J48ZTUX,S9]?(!6N(
M%B9MJJTW@,NK(,J]=_ U!S\_F-[=3L=W#W]C-)T,;Q[0D2Y7IVC\Q^/WZ?7X
MYN&L[V&38-K/M@$O-@'9!P$I0]>V\LL:C:N9F;T/T =T'42V@WC!/HTX,MDQ
MXA0C1AC[)![O4N9M//Y1R@Y*VOE72+G0E4>ZFJ'QSR9?0:UY],_PJ?8.BN7?
M0[EO(L>'(X<&.JE7.C/G/>B0VKAGTQL<?:$I.?T$=]SACC^+_CM2?1KP,-ST
M.'HCZ(V60-+$0/DO;3&K48<E.H@%W5]>C4>/DW%T^^W-=N_[\&:$)N/A_?CJ
M=C*ZCX*R:)AE3=D4VIM9*W5T:6N/1@:P9;EN>_C&^.BBR8M97BWJ%E->KIQ]
M-@%CC;XBB85(<,H4S#GFE&#%",P3'*<Q%D1%PP9:RC[EA:D152EF28(H$9C
M*!6&GQGL6ZX:;QQ::C=;:V=0S'',&8H93E..1*JBV_D\SPPR'4&4<\PD090R
M+"2##'"L9'2MJV8.U=0X@+QG+G'*8TP@6HREHECP%  +V($S$3TX#0!=#68R
M$4C@1#%$,4N3Z,)JC\ U)@0Q@141*(6=>-2I\YX3"2$$VPU'7R2C[#1Z,-FR
MLH5=O$+R!,N4=./.9!+HY1) ,K%[N5M'7Q&5F"N%4Y&TM*>*8"X%S%6@&:B0
M057Z7U7I[Z@*%#$@ATB8,ZPDQXD,"E,L8X(I/:RJ ,(2B2B+L5+BL*HI28*J
M<9)",!H?U)7AA).V1AB8L00S$7^H:PH<"BR4 M 4$*0P@ZH!2,#OFZX*ZI$'
M77G057'Z7E=(0,; *J7I_] 5<"2J&]_IROA[7;?KH&M(5^*8!K(%$)0"\4DK
M L#$@G(T+&U3^<C.X?C;D]&\P$VA-@AN"FW_GK0*40+*099"0 \I@48M8Y%?
M&O1JM$,FG!)0#YDIGT"<[7\>GOR8 Q'0Q-!4')I+!B:I@J:64/@2DYB@.,8<
MM$D2:!.%#OUC^WM'8VG<HKT U"@+&6Q.R>YM=\<8;H[6-_/-!>5:NT5>U:@P
M<W EQR+I(;<Y]#<+;U?M0?MD/51C.UW"/<FX8 #?Y];ZW2)LT-V\!K\ 4$L#
M!!0    ( !F ?U:JN!J9P0(   0&   9    >&PO=V]R:W-H965T<R]S:&5E
M=#$S+GAM;'U4R6[;,!"]^RL&:M&3:VU>4]N MRQ DQIQTAZ*'FAI;!&A2)>D
MHJ1?7Y*R5:=P?!&'PWEOWI":&99"/JD,4<-+SK@:>9G6NPO?5TF&.5$ML4-N
M3C9"YD2;K=SZ:B>1I Z4,S\*@JZ?$\J]\=#YEG(\%(5FE.-2@BKRG,C7*3)1
MCKS0.SCNZ3;3UN&/ASNRQ17JQ]U2FIU?LZ0T1ZZHX"!Q,_(FX<6T;>-=P'>*
MI3JRP5:R%N+);F[2D1=80<@PT9:!F.499\B8)3(R?N\YO3JE!1[;!_9+5[NI
M94T4S@3[05.=C;R^!REN2,'TO2BO<5]/Q_(E@BGWA;**[<0>)(72(M^#C8*<
M\FHE+_M[. +T@W< T1X0.=U5(J=R3C09#Z4H0=IHPV8-5ZI#&W&4VT=9:6E.
MJ<'I\7+RL+A[6 U];<BLRT_VP&D%C-X!AA'<"JXS!0N>8OJ6P#<J:BG10<HT
M.LLXQZ0%<=B$*(BB,WQQ75KL^.)W^*Z$2$O*&!">P@W7A&_IFB%,E$*M8$Y5
MPH0J),+/R5II:7Z07Z?NH<K2/IW%-LV%VI$$1Y[I"H7R&;WQIP]A-_ARIH9V
M74/['/NYYSD+/"VKUVHLB49NJM\3PVIVO9@_?EW M\N#KV'O'V9":9@D29$7
MS&!2]RIPA[JF^ CAH-/L19TWUF<+#T_"P__@4=!O!KV!@[>;<3^P5MSL#@9@
M_@4S8A0V**\2)Y:O) K2 D$+TQI2(D]>S0%_1FEG1 L>,JP"39S86!+,URCK
MGPH,VXQPDE+"(16,$:F .BG=3C,,HGJ=Y*+@NF%(2"ZDIG^(FR%F"%9$5DDM
M-NPVVW$?3CVW?]29.<JMFS_*B#3L59/6WGK$3:K._A=>S<=;(K>4*V"X,="@
MU>MX(*N94VVTV+D^7PMMIH8S,S.F4=H <[X10A\V-D$]^,=_ 5!+ P04
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
MUN":@6\IP(R)BDB[73"R9!FB@&%)2JR8BGY$5U0(A2!Y@:RY\0JG=N"9?NC
MF3'AR%(!C2@N)9PZ9NCU31_=<68LN"09H**%1+C(,J-0(.1$:WD!8>B:CA<:
M\4NBP%;0'^H/_(F*+XQU@QY*[AN3VC]M. '-6*X01ZIJB_<4%<]86E.=>K;I
MNR'J]"-V#="U&664.Z?O@N,$7-<W+=^&R&C:ACI78=*$YO??A8X=7!Y(7_$,
M>PW:U'I:N39&=RX^P31>?+@?[86[,2"9"B@3L/;0?(DV-O7'4N+-T'&,&<4"
MH36C=3TYU?NM ?C7[.=UG=G3Q7',GN>\+\1N;WPM(U2A\;=D!,BAMY?.?QO_
MG5H_504%U])5\4L5'<3A!YAK^-F?-#6V@J^8U'<SKAU?#P=UG\ZT6,FUEQJ=
M5=Y6A=K?4YNIT-YSUN-T&LT^*5\]S.YOQXLZ\^[G<_36[?UL&BW&]W<PBR?1
M M-R<=^Z-!H.[Q_OU-Z>5^?L!?*Z-U'5F^ 3):+^-.XP[$N286J=@-US=+E"
M5Z,CK*"O3UF1\)R"[YM.7YGOX4?H8V%<8F$<%\8.(L>RP_UP;.Q#>2=XIG/Y
M,YX]#:=[T(9T_-J7<-BHWFA.IY"@P_R&9UTF *LX_A[A-Z=))>HR<@KIF2K4
M_RB3C'^027[@F*[G?SN>/=\S$:>WTL[QM=UGQQ(*2ZIEFVXO_+8DUPI,WPG>
MD.0T"!^1Y&BK C\TP[[_G^6'\>_DA]9?P768#:%I6RZF@?*8C57"PZ80!,:/
M0MG1V.69CN69KJV0]FWL9V&PGS0GT+-5S?;QJV^%IN7Y,,(@+-:&LOAUEX=?
M VH>I-*&I(UBZ!=4QS'[+M9$'"P"LQ\ZF)%8/$W/<75NXMK2\04K%>:U]UAA
M3%[7',>; N?*4Q7BCG6IM_2W?7EFXHBQ%>P)O=).-ZI#RE<3*M12X/&<Y5OL
MEM%:4-JDA8#;2N5EFV<MZWET&[><#=(2G$.MA?(HUN+:O)0^X9-HJX8 @F^B
M4F*PZJY,<%@3$J<8DN!LE+-$\"4%-9FRXAPMT6X[A"HG*55<*!;Z%)02QEX@
M:?A:2!:P-]?A_ +Z@51'9!.&VCZY80>E &>VA)=H2@3_2_UH]#>B--5S@IIE
M/@MJ3X^4A?=:FZT(-31O#>K=O:=53L5:/R!+T#C5KZS=[NZ-&M5/L\_7ZP?N
ME(@UPPDTHRLDM<X#OP.B?C36"\FW^J&VY!*???IS@^]L*M0%/%]Q+MN%$K![
MN=_\!5!+ P04    "  9@']6YG)[V1D&   N%P  &0   'AL+W=O<FMS:&5E
M=',O<VAE970Q-RYX;6SM6%MOVS84?O>O.'"'(@%<VU+L.,T-R*UHAJ8-DFS#
M,.R!EFB)B$2J)!4G_W[?H6S';>.L[9:U&/H01:3..?S.[2/-W:FQURZ7TM-M
M66BWU\Z]K[9[/9?DLA2N:RJI\65B;"D\AC;KN<I*D0:ELNC%_?YFKQ1*M_=W
MP]RYW=\UM2^4EN>67%V6PMX=RL),]]I1>SYQH;+<\T1O?[<2F;R4_I?JW&+4
M6UA)52FU4T:3E9.]]D&T?3A@^2#PJY)3M_1.[,G8F&L>G*9[[3X#DH5,/%L0
M^'<CCV11L"' >#^SV5XLR8K+[W/KKX+O\&4LG#PRQ6\J]?E>>ZM-J9R(NO 7
M9OI:SOP9LKW$%"X\:=K(QJ,V);7SIIPI T&I=/-?W,[BL*2PU5^A$,\4XH"[
M62B@/!9>[.]:,R7+TK#&+\'5H UP2G-2+KW%5P4]OW_Y^MW%U8NKDXLS>G/Z
M]H3>O:*CBY/CTZO=GH=Y%NHE,U.'C:EXA:DHIC.C?>[H1*<R_=! #[@6X.(Y
MN,/X48O',NG21M2AN!_'C]C;6#B[$>QMK+0W]G2L7%(85UM)?QR,G;<HC#\?
M\K:Q-7C8%C?+MJM$(O?:Z 8G[8UL[S]_%FWV=QY!.E@@'3QF_<O2\JBIAX%&
M4;=UF1OK7UQ)6](;Z)"9T)&5J?*T<G5:(T'K=*I;9\(F><A+AT[>GF/J1CJ/
M;O6.G,JT3"&IT90BLU+R/ K;YW2FTD+HE"Z]\-+1H=#7M/;\V58<]W=FW\(H
MVEDG;]#V;,/GDI(&&GO790 _UX#\\/J<7JS/6B))3*U]EZXPL/+&%#=*9\$*
M^SLS.A6.P&\DP!(9\&; 1J)D3:HKQO$3#3K]?I__*.KR<]"-A\T#IELK32?H
M"% CX#3-#.(C,9DH)A30$7$L-"_(@\3<2"W@0H>43HHZ98/LQL048$^,MB%3
M5H42.I%-0 LQA7AES8UBHG0MK#U1L)(H49#C,#=1X94J:95)%<I&5D@^*XJ[
MD!QH>7$K,<-,[AE&$OQ0"*SVAF'#@-)H'/[TB1RV"0LO '@6<]<2?I[N#BWE
M-AKM.!:2SG%HP6 %0%I1=*C99)BM.1O)^QH^-<,)MHVQ4ZD25LDF/K5%=<Q!
MIFAMF6K8[%"J7&4:Q1 .X9QD7S,@]TV.L*MT*,F%SE"$2M.X=JI1-E,MK<M5
MQ1#FTU28).""@-29R-@*U$II,TB'T"S!#5&\;F069=F"/2#S5HWK(-1HH1:0
M3M0;B$@[$?8JUZ6W0ILC;,"A-@5EM6#P, %_-H<4=S9GU7AE6DXFS&8^E/A2
M0H6^FU6QH[&QH""488U0V9GLPS7[:4.%P$%WWKR"PI+*WQ'7 %C%MQ -413W
MY8) (1Y5P,(Z$W7K@7(>JVMMIH5,.?QLK8)[GAN@1$B;RIVO<$\@$VO*I4B@
M=N: 4L'P7LFQQ=>[5C3D+2.*:)HKL%2.$&(Y&DNI"7"QC;)\EQH&Y)E6$Q\$
MPQ&.+F@;'9IO9;1@$@'#!B7+,23FFQ1-$0VPA58%;4519Q.Y6ANOTT9G.,O7
M5I^&?>IWAX%#AK/'=\4A/RCD?T$AO.4MJ@'-Z7@[Q0(V[(V(+%?%$4J!>2*D
M0G 3\RE3E75)G O#H7E?BT)-[AC,HBQ:340X^FP&9_I5DF3&A<K$'-03T-6R
M'[E(/Y>NN!H\IQ.\=1?(BRN8#PV-:QC-61@INT4O.6ZP4"L>/R/PNP+N<MN@
M;IFH&K5[S@E\P["OGYYLHLY@ZV4G&@YH+5E?.JR 6^+%8-3]O-.*>U*B:=T?
M5NC;,$WK4Z8A],.E-\DU_2YL"LOW@Z<AG-9JPJ'_BG!:?T<X]'5G%O7XD65C
MR.7ZA.>794*8D\%2<O\!(7QT,OH"7GA* H@[@]&H,WHY"%2PEBX3P-9WR0'?
MZV%C!07\.&Q\_6'CVYTU#A[NF@_Y@7]? <K'5<K=7QBA[YUZ^K/+OTM57W%V
M>4J.VACTP5"CP% /79#UENXP0YGR32U(B&/:7&<N9A>7P0?-'>B]>'.3?"9L
MQ@16R E4^]W1L$VVN9UM!MY4X49T;#P8+KSF4L O%L#WB3%^/N %%E?D^W\!
M4$L#!!0    ( !F ?U:3 OL$%P4  ,8+   9    >&PO=V]R:W-H965T<R]S
M:&5E=#$X+GAM;)U6;7/:.!#^[E^Q0SL=F#%@RZ^D26: T&MO$L(TM#<W-_=!
MV +<VA*51&C^_:UD0TB;Y-I\2-#+/L_N:E^\ISLAOZHU8QJ^5R579ZVUUIN3
M?E]E:U91U1,;QO%F*61%-6[EJJ\VDM'<@JJR3SPO[E>TX*WS4WLVD^>G8JO+
M@K.9!+6M*BKO1JP4N[.6W]H??"Q6:VT.^N>G&[IB-TQ_VLPD[OH'EKRH&%>%
MX"#9\JPU]$]&H9&W I\+ME-':S">+(3X:C8?\K.69PQB)<NT8:#X<\O&K"P-
M$9KQK>%L'50:X/%ZS_[.^HZ^+*AB8U'^5>1Z?=9*6Y"S)=V6^J/8O6>-/Y'A
MRT2I['_8U;(D:4&V55I4#1@MJ I>_]+OS3L< 5+O"0!I ,3:72NR5EY03<]/
MI=B!--+(9A;658M&XPIN@G*C)=X6B-/GE]?3/V ^^7@%%Y/1_+2OD=/<]+,&
M/ZKQY F\3^!*<+U6,.$YRQ\2]-&8@T5D;]&(/,MXP;(>!+X+Q"/D&;[@X&%@
M^8(G^18:+@J5E4)M)8-_A@NE)6;#OX]Y6W.%CW.9"CE1&YJQLQ:6@&+REK7.
MW[SR8^_M,Y:&!TO#Y]A_(1;/XA^WSB<]YU+P%<R9K, ^QD,]T 8*'?C G3\I
MWV)AXL/[J0N3Z0P/;YG26(-:@2I6G.4H^QH%/-?S/(AZ)/(@ >(F:8H\BYIG
MN)%%:<+GN3"E7(RQD6 !9PSKSQ#HG8 [1B4$A%@>']I9Y_Z8^)$[B.UQW@'?
M':2>.P@3"'II!!'$$02>&P0AQ ,W#7S@J,UWHRATO3"$-NM .@A=$@4U8L^K
M(')3/P82NBE)+"I(?3=.$+/L0!C53OD>A+W *"*]"/ EH@$>)J[O)1"B96&
M FA FGK07EG[@L@BPQY*ZK5DK-&'EH:1Z_M!8V(<$%1'[*Z][D!@8 T4-6K&
M&R!QTW#@1G@1&\3 (O#01X0?U?BB R0:[$UN'.R%D+A>4GM'HMCUXT;=%Q0_
MJ(O1,Q(8>QK+O"!VDT%J=T/EB"5F2L:J!9.'4G1A+*H-Y7>PHPH*#AENRX+R
MC&'/TFN@90FEH.;BEG&*.=.#F_'[R<6GRXES_0[3;CB%\?7GR70XG=\X8VP;
M!=\6^NYG73^=^,Z(ED:5"_LL]4TBND$<8X!27 ?X9@FZE-Z++MBJX+S Y$>'
M-DP6(G\2-"NWZ@1F4F2,Y0J64E36&X4R!,-M7J?;2%T:+VGV;5M(3.C:>;-3
MA?W2H#)3/#,FMT>1[#J73"$8/R8K+ 2.&T#AV6S6Z.E".PH2F_F=1G9&[^KB
M0T'[M&WBDH%)A &66GL08CZD1OS@,N/Y V<Q TQ=8$8<.WX<ENM/\YOY<'KQ
M 9O":'@YG(XG-E3.]58K37ENWF]1\P/5#T/S*Y&C'; -2)L&E)L&].952GS_
M+5P5.=+F<*.I9@I&E']%,[OFSUD\B3(OUD6)['\E\M_2W+UO(@[[36332)SE
MD[@;+;*O\#>5>0-Z0ZO-6YA+_,;_V%><U<MH[CM,UUF_C.*^R72=XH443=OI
M.E]>ZL:^'76=N="T/,KB0PXW%9)MI<0*@8V0MO;:";;J&*<2+(]D$+@1=O>.
M\X,5K\$\=^R&V*!?FZ@GZ#()X;%O>/]HMJJ87-D)4F&/VW)=CUF'T\.0.JQG
MLWOQ>L*]HECY6.@E6R+4ZR51"V0]-=8;+39V4EL(C7.?7:YQT&;2".#]4@B]
MWQ@%A]']_#]02P,$%     @ &8!_5L!</* >!P  -Q   !D   !X;"]W;W)K
M<VAE971S+W-H965T,3DN>&ULC5A9<R*W%G[O7Z$BDQ2N:D/OR\1V%<8XH6H&
MN\ SR:U;>1"-@*[TPDC"R_WU]SOJ!D,&._,P@]0ZY^@LWUGDBZ=:_JW60FCV
M7!:5NNRLM=Y\[/=5MA8E5[UZ(RJ<+&M9<HVM7/751@J^,$QET?<<)^J7/*\Z
M5Q?FV[V\NJBWNL@K<2^9VI8EER_7HJB?+CMN9_=AFJ_6FC[TKRXV?"5F0G_9
MW$OL^GLIB[P4E<KKBDFQO.P,W(_7 =$;@J^Y>%(':T:6S.OZ;]J,%Y<=AQ02
MA<@T2>#X>11#410D"&I\:V5V]E<2X^%Z)_W6V Y;YER)85W\D2_T^K*3=-A"
M+/FVT-/ZZ7?1VA.2O*PNE/F?/36TOM]AV5;INFR9H4&95\TO?V[]<,"0.&\P
M>"V#9_1N+C):WG#-KRYD_<0D44,:+8RIAAO*Y14%9:8E3G/PZ:OQ9'CW><0>
M!G^.9A=]#8GTO9^UW-<-M_<&M^NQSW6EUXJ-JH58' OH0Y6]/MY.GVOO78DW
M(NLQW[69YWC>._+\O7V^D>>_95^5U:5@#_R9W>0J*VJUE8+]=S!76@(1?YVR
MN9$8G)9(6?)1;7@F+CM( R7DH^A<_?*3&SF_OJ-OL-<W>$_ZO\;C7>[3NKE^
MSWIU@U#L\ [VL!;61M:/N4DS9#G+&UH-EXEG)+\2K#L7E5CF^HSEBN%T(W,E
M%JQ>,KT68"J0VWFU^LAFP]]'-U\^C:R[6W8_O?LZGHWO)NSV;GIP*1O]>3^:
MS$:L>SV:C&['#V<6!9LB[EK#K92BTG2[S99B(20OV ?FVHX;VTZ8FK7OI';H
M^,?$2G,M6! YMI,F+$P]VT^#?\BK);*T8IX;V4[BL=2UO20\I('P*/5MST^Q
M2K%R$V_G/#J6(JL?A7QA7=<.8I*2L#-V?GR-KC64]J"P&[H'<F[$4H!L<>#A
M5QN[0=I*\T('C/YI\L;*KN?9GA.#V'4A.PK>D-W:>PX-3Q(TFG9C^"$-(<V/
M?-MW8^O!?(>K@]!.P@@K>#.,["!-#6#V$8>8>2&,6ZHL+P N L0)!'%M3K[T
M9CUVVYI,MFQU#6]*,DK7[S . 3I>O?SR4P*__JJ86"Z%*>B6"0OX5>\(?=/1
M\&XR''\:#QX(@OAR"/L#Q+71G0OREKGZ XMA-84CQ#JR(P0D#B/KR^Q Y?VU
MS'=ZH<-^WOU:(VB>Z2-/D_M2X-=SL7*\Q X2UYK4U3F*YA9FD ]S+4J%R 84
M4 IMUR.4 Q'6<,VK%;F5":7STMS**^0?/"-!9SM.8#N!2TQ1B OB8Z:*&WUV
M*@,/OA_;:>1:MRU"]D>+'(X%E#,#,MCN&JD)5FET)/61%UO>=%8" R<6#[B,
MP@#909 B-+=0>G4%5-^A:H^I??J<B/\[:714H7:9>?8FG$\(/XUP(*+8(C(6
MK,S>UHQJ)4'S17 )'X.!H7N)<HZ8[#H8U4O^6C50,*E^[2I'E1=L9XW5^ 8S
M"0TL1K"YS.!<F5(KRDTM,3D=!$D!M_I)B,HP9%S*%\I*7M;;JN'B2@G=P*7(
M^3PO<IV#C91?YA6BEL,U4D"R!J>UV<I-K2B9CMS<2ND>B#BCU/S>8+J(\HIQ
M9-./MHJ;T>UH.AW=F/8PF,U&#S/61>I>(W\?QJ/948?@%5]PRA[8N\DILNCJ
MJC$>9CUQN5!P<X+JG@*+QN%(*C^F7-> KTFWUJ)SYJ9V$J36O<2@*_6+S<2W
M;;XI*>C&:0(SW[HN(#.(;2].69C$=N D5NJG:!0.930*1.0EUM<3*='=D9V9
M1&THD1<3#-R+[UP,;<_I'VK-@<E$2]IQ"M%I:QNN[^WK FFQ8WK4N'I$^2##
M\#FVHS@R.@6NG22@^!$/= ,4@MCU3:%)D.'>C_%Y<0!B]%24AS2V;O? RRO,
M8=M&IZ,N]>J1JM8F@595_C\<$-4;OMNC$T7@0U.^7&,[;5!^@XB* O6OMINP
M-5>07YV_ R1*H0T&I&=3=XL7"//M)$YL)W+0&[PXM$,O.D+SA/K-_6B*SC/Y
MC7VZF\W8<#"=_@=CT!^#Z<W,^H1K$%Z (D+YB=$+L'$QCJ1VE/BT\5CD8,Z)
M4]K$-)6$GAT[9IMBR+%3E#7/"1P, ':8NFV)>]5LH*Q3Z6D?-M/6?%;]&[SX
M(\\+T^BI;* -DL]?*\4@RZC<4/DPYX"]U'@/ZA=#?S""OZ'5OFC8)WL]9@M5
M%_F"4Q.;\\+DE7GR*)3"18N0IF[RJ@4#W;S=:=(H7*N<DE/95H5#<@#/,KF%
M4!1T7IBZ:.9?C>*J- FJ@5*Z]2G7Z\,>L)=,3#W"U#^=>M0P.%YNIC HZIQ
MTPH7@._4@Z%_\)@KA5R9)RLY 2YNWG7[K_M7\:!Y#+Z2-T_JSURND&'(Q"58
MG5X<=IALGJG-1M<;\S2<UQH/3;-<XV4O)!'@?%G7>K>A"_9_*[CZ/U!+ P04
M    "  9@']65\ESJ>4#  !7"   &0   'AL+W=O<FMS:&5E=',O<VAE970R
M,"YX;6R-5EMOVSH,?O>O(+QA3UY\B9-V;1(@MZ$!VB2HV^WAX#PH-A,;LRT?
M26[6?S]*=MSTH"WVT%JBR(\?*8K,Z,C%+YDB*OA=Y*4<VZE2U97KRCC%@LD>
MK["DDST7!5.T%0=75@)98HR*W T\;^@6+"OMR<C(MF(RXK7*LQ*W F1=%$P\
MSS#GQ['MVR?!?79(E1:XDU'%#ABA>JRV@G9NAY)D!98RXR4(W(_MJ7\U"[6^
M4?B1X5&>K4%'LN/\E]ZLDK'M:4*88ZPT J//$\XQSS40T?BOQ;0[E]KP?'U"
M_VYBIUAV3.*<YS^S1*5C^]*&!/>LSM4]/]Y@&\] X\4\E^8_'!O=OF=#7$O%
MB]:8&!19V7S9[S8/9P:7[QD$K4%@>#>.#,L%4VPR$OP(0FL3FEZ84(TUD<M*
M?2F1$G2:D9V:K-;SS=T2MLM[B&ZF]\N1JPA5G[EQBS!K$()W$/P [GBI4@G+
M,L'D-8!+=#I.P8G3+/@0<8%Q#_J^ X$7!!_@];L8^P:O_P[>DHDR*P\2MB@@
M2IE ^&>ZDTI02?S[5L -7/@VG'XF5[)B,8YM>@<2Q1/:DR^?_*%W_0'9L",;
M?H3^5Q?R(<+;_/RP9ZW*F!=XEH7_^X*'%*TY+RI6/H.Q+96$'5>IKOPL!E8F
MD&1YK3"!K$&K"$T:-'IC*D78DV?@>\C(-.:EY'F6,&T@%7T* ZF/C7D/9N\
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
M\@*LLE[7>J6+'*!X_LQ(5@ 'X9_( E2$;L] L;8;H(%3J1MM41,5.2L5T#R
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
M6.*68HE1QOV1RO274W%\%4FOQ&@PTRCO:'F3FH4:2W88I1&I.U0)J0=6H%>
MNBVV"P#+0&B\JU2_7B*.!%496-AV))JMR6)R<&F=V>&L^B!ARZ4J1,:Y/CZF
M1SM-AXJI0-BJ4YQ4\6[W/0L;=.I4+!P+PLBA%:5-DMAOY=)%_4!7# /=Z'(.
M4C9IJL>C.I8RFL@13'-M+,?/I^OQCG<^ "5(BD9Y]4=J\A46D?NPY2M0#H6
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
MIZP&BF]-=UIQA;W.F"G^N6!";\#U->?J.- 'G/ZN]/\%4$L#!!0    ( !F
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
M7ET]JHEDN_*X7S&)EX=RN,7;&N4*@._7C,F7B7+0W/_Z_P-02P,$%     @
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
M7=8/BB_,C6[,%>Z'9CG'A9P)+8#O,\[5^D%OT%SQS_X#4$L#!!0    ( !F
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
MP8:P$E?8@4MM#^#^O5+F,+$/-#U]]Q]02P,$%     @ &8!_5L+'2,8W!0
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
MS1YBI]Z;'*N/8[&"! ;1H-&W3RR9,M78/^THO]M VT+;YKRQ'^/6-Y 2LJT
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
MT04S"&.@OZ\X5V\=,T%5@D?_ 5!+ P04    "  9@']6WD4-ZN "   8"P
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
M>%#M'9.8(K*]45T2P[US<H/ /0U\YXW$_<33T%%-.'PCT=XI<MU@?V*^)(5
M%!8*Z?1.% 6OFU8=2%::NI\SJ;J(F:Y4GP>N$]3^@C&Y#70K:?\<R3]02P,$
M%     @ &8!_5C%H#Z^U!@  ="\  !D   !X;"]W;W)K<VAE971S+W-H965T
M-3 N>&ULM9IK;]LV%(;_"N$-0P=DM7@1)76.@31VT0!)X^6R82CV0;'I6*@N
MKD0GS;\?)3NB*%%R[%)?$LL^?/WRF.1Y1''TG*3?LA5C'/R(PC@[':PX7W\8
M#K/YBD5^]CY9LUA\LDS2R.?B,GT<9NN4^8NB410.D6718>0'\6 \*MZ;I>-1
MLN%A$+-9"K)-%/GIRT<6)L^G SAX?>,F>%SQ_(WA>+3V']DMX_?K62JNAJ7*
M(HA8G 5)#%*V/!V<P0_GMITW*"+^#MAS5GD-\JX\),FW_.)B<3JP<D<L9'.>
M2_CBWQ,[9V&8*PD?WW>B@_([\X;5UZ_JGXK.B\X\^!D[3\)_@@5?G0[< 5BP
MI;\)^4WR_)GM.E08G"=A5OP%S]M8Z@S ?)/Q)-HU%@ZB(-[^]W_L$E%I $E+
M [1K@-[: .\:X**C6V=%MR8^]\>C-'D&:1XMU/(716Z*UJ(W09S_C+<\%9\&
MHAT?WYY_GD[N+Z?@^A.8W5S/IC=W_YZ Z5_W%[.KZ9<[</9E BZG9[?3S]>7
MDUOP;L*X'X39[^ /<'\[ >]^_7TTY,)'KC:<[[[SX_8[4<MW3MC\/<#P!" +
M(4WS\[<WAVKSH>A]F0)4I@ 5>KA%;Y:*29'REQ,P"_V8 S]>@.GW3; 6HY6#
MKY<B'%QP%F7_Z;JZU29Z[7P2?LC6_IR=#L0LRUCZQ ;CWWZ!U/I3UW%#8DH:
M<)D&W*4^/D\RKNO@MI5=M,H7A:<Q=+'G4<<>#9^JYC6!R,8N@6X9J!@CI3'2
M:>QL/M]$F]#G; $F3/1\'OCY$J SNU6B%0\N]2SL.C6OS3B'6M2Q;+U5N[1J
M=UJ50VE=#B7V.I1.0,S$'YYP/]1YMQN>/,?RD.O6O#?CB(>A ['>.RV]TT[O
M'S=!N CBQ\)T>7$1K=/DB>7^,_#UBD4/+-7.@T[Q0^>!(3$E#TZ9!Z?'Y< Q
MF09#8DH:W#(-[E'+@=N<88YC4^351FDSCK@(.U;+8N"5MCQCBX'7L( Q%#/*
MJEEMQB'/Q;;KZ:U"2]96J[_E8*==M6432L224+.O"80NL2!L\U]A ]B=[(W
MC^0A"%GWW.^6.734FU)3.RUI /:) ] H#YA24U,AB0 >AP2[9LJ(\RBRZT2P
M/TXU)HD FD,"V*SUT!*5OF%6PP0"8%K6*RB1 /;(!+!9[%VQ@-57,$T81,3S
MG!;SD@E@-Q2<)]%ZPUE:G0%="X%1"C"EIO9=<@#L$P2@41(PI::F0K( / X&
MH*;*8X)1?7CJPF@;;$/) M <#,!FE2>(4ERWJ@LC-M5;11(%4(\H@)H5WJ%U
M#- $04A:& !)!D#=#'"]7 9S]L;YWZUU\-UP'R" *ML"O>X+F-T8Z ,$D 0!
M=!P(($V!QQBY]?JDC4,VMEI&IP0!9 X$D 8$('+<^FJEB[,<U+H&2!) /9(
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
M<VAE970U,RYX;6R]5EUOVC 4_2M6-DVMU#4?0* =(/'5+A*EU6BWAVD/)KF
M-<=FMH%MOWZVDV;0AE!I4WD@MG//\3G7=GS;6RZ^RR6 0C]3RF3'62JUNG1=
M&2\AQ?*<KX#I-W,N4JQT5RQ<N1* $PM*J1MX7NBFF#"GV[9C=Z+;YFM%"8,[
M@>0Z3;'XU0?*MQW'=QX'/I'%4ID!M]M>X05,03VL[H3NN05+0E)@DG"&!,P[
M3L^_'/@68",^$]C*G38R5F:<?S>=*.DXGE$$%&)E*+!^;&  E!HFK>-'3NH4
M<QK@;ON1_<J:UV9F6,* TR\D4<N.TW)0 G.\INH3WWZ$W%##\,6<2ON/MGFL
MYZ!X+15/<[!6D!*6/?'//!$[ #\\  AR0/ 44#\ J.6 FC6:*;.VAECA;EOP
M+1(F6K.9ALV-16LWA)EEG"JAWQ*-4]WIX.-H^# >H=LK='U[._P2C<>H-QFB
M:#(<7463Z'Z$QM'GD1FX[TVNH[Z.[4VGH_LI.AF"PH3*4_0>/4R'Z.3M:=M5
M6I2A=N-<0#\3$!P0X ?HAC.UE&C$$DCV"5SMIK 4/%KJ!Y6,0XC/4<T_0X$7
M!"6"!B^'^Q5R:D6&:Y:O?H#OFO-D2R@M2TV&;%BD.7";;M"HU8-FH^UN=A4?
MC]N35B^DU2NE13KC<\*( D3U84H080JS!9E10%A*4/(, 4L(6^BC0C&+H<Q$
M-D>X(Z[9]/3OB8>C87L6&H6%QC];F,&",';$1>-E+BK5F&_NI5SA&#J._JA*
M$!MPNN_>^*'WH6(GA877\!66*WR9T:-A>Q::A85FI871Y Y%; -2Z:M 230F
MJ;:3Z">>$4K4+S3@8L4%MM_XD_%X<(J^WD Z _&MS$SE;"]?CLSR?R+;2TRK
M2$SK%=:V]6S1_+!L<4OB6K7#JWM1F+AXG<-X<51?YN-YG"E?#OKPO;^WHE?I
MI)=RH<AONPU+[S3OV<SO_;!$86E@LT+BSL7MO\*.R2=I'-TR98&E>\;=*492
M$ M;HTD4\S53V25>C!9U8,]6/T_&^Z8^M$7.7YJLN+S!0F\BB2C,-:5WWM2J
M1%:O91W%5[;DF7&E"RC;7.H:%X0)T._GG*O'CIF@J)J[?P!02P,$%     @
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
M'H$P"7I^R[EZ"<R1[U^X^"]02P,$%     @ &8!_5O@E)IK@ P  5 T  !D
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
M_Y*0GPBZSE[&GZF0K_;9X8K@@+ T0-Y?4"KV)^D Y?><P7]02P,$%     @
M&8!_5F !E>%@ P  _@L  !D   !X;"]W;W)K<VAE971S+W-H965T-3DN>&UL
MK59KC]HX%/TK5KI:M5)WDC@OF 4DAD!+-3S*HU55]8,GN4#4)*:V@>F_7SO)
M9!D(:=F=+\1V?,Z]YYCKW-:!LN]\ R#08Q*GO*UMA-C>ZCH/-I 0?D.WD,HW
M*\H2(N24K76^94#"#)3$.C8,5T](E&J=5K8V99T6W8DX2F'*$-\E"6$_[R"F
MA[9F:D\+LVB]$6I![[2V9 US$,OME,F97K*$40(ICVB*&*S:6M>\]9MJ?[;A
M4P0'?C1&2LD#I=_59!BV-4,E!#$$0C$0^=A##^)8$<DT?A2<6AE2 8_'3^R#
M3+O4\D X]&C\.0K%IJTU-!3"BNQB,:.']U#H<11?0&.>_:)#L=?04+#C@B8%
M6&:01&G^)(^%#T< R5,-P 4 GP+<"P"K %BG /L"P"X =N9,+B7SP2>"=%J,
M'A!3NR6;&F1F9F@I/TK5L<\%DV\CB1.=^7(TZLZ^H,D 36>3P7"!NF,?W4_F
M<S0<#R:S47<QG(S1K'_?7?1]M)B@_L?E</$%=7N]R7*LUH;C3_WY8M0?+]!K
M'P2)8OX&_866<Q^]_N--2Q<R315,#XJ4[O*4\(647#2BJ=APU$]#""OPO7J\
MB6L(=.E/:1)^,ND.US)^V*4WR#+>(FQ@7)50/=R'0,+-BW#_]^%FC1JK/'(K
MX[,O\/7'4S0%MD/#= ]<R!H6'-W?]]#7$20/P+Y5'5DMI;J;;OF6!-#6Y.7#
M@>U!Z_SYRG2-OZOL>DDR_X7(GEEIEU;:M5:.Y;W,20R\RK(<ZF10=?ON.Z8K
M;V.CI>^/S:B-<*T9YS$MC VO6<9\)M,I93J_E!FE 4V@2J=S%M-Q<!.?R*R-
M<*W,G,P]"FD[N.%4JW1+E6ZMRD%,6102="<_(^$O"Z*6Z]J">$DR_X7(GGGH
ME1YZ_[T@:J'76N:=5U?#-"S#.ZDOWSO[KYBF8UO8\ZK_+HU2:N-_%$4M]EJM
MC3,)KND8CG.B]'Q;TV@8]H6R:)8ZF[4ZWS'*.=HRNHI$E=):]+5*FV>G:F/#
MMDSS1.KY/LLQ/:MQ>J;Z46>4 %MG'29' =VE(O_^EZME$]O->K>3]9YL;O->
M]%^:O#,>$;:.4HYB6$E*X\:36;&\V\PG@FZS_NN!"MG-9<.-;-"!J0WR_8I2
M\311 <J6O_,/4$L#!!0    ( !F ?U8XEL5E]0<  (!2   9    >&PO=V]R
M:W-H965T<R]S:&5E=#8P+GAM;+V<76_;-A2&_PKA#<,&=+7UX8]DB8'$)+$,
M318T;7<Q[$*QF%BH)'H4G:S ?OPD635-6V&LXIU[T<2.SD-)KW4D/99T]BS5
MYV(AA";_9&E>G/<66B]/^_UBOA!95+R52Y&7?WF0*HMT^5(]]HNE$E%<%V5I
MWQ\,1OTL2O+>]*Q^[U9-S^1*ITDN;A4I5ED6J2^7(I7/YSVO]_6-]\GC0E=O
M]*=GR^A1W G]<7FKRE?]#25.,I$7B<R)$@_GO0OOE(=A55!/\2D1S\76[Z1:
ME'LI/U<OKN+SWJ":(Y&*N:X04?GC2<Q$FE:D<C[^;J"]S9A5X?;O7^F\7OAR
M8>ZC0LQD^D<2Z\5Y;](CL7B(5JE^+Y]_%<T"#2O>7*9%_3]Y7D\['/?(?%5H
MF37%Y1QD2;[^&?W3K(BM@I+37N W!?YN0?A"0= 4!+L%HQ<*PJ8@/+1@V!0,
M#YVE45,PJM?]>F75:YI&.IJ>*?E,5#5U2:M^J>.JJ\L5G.35)^M.J_*O25FG
MIU<WG]C=AVMV\^&._$B%CI*T(#>14E&5^$_D9_+QCI(?O__IK*_+X:JB_KQ!
M7Z[1_@MHCUS+7"\*PO)8Q"WU])5ZWP'HE\NY65C_Z\)>^DXB%?.W)/#>$'_@
M#UIF:'9PN3=I6Y[#1_=;RMGAY5Y+.7>7_Q;EFYD_<:S+8//!"6I>\ +OKNQQ
M\2H51#X0]O<JT5_(M= +&9.K_$D4NNP^NB!_OBO+R)466?%7VR=H/4;8/D;5
M54^+9307Y[VR;19"/8G>](?OO-'@E[;TD#"*A#$DC(-@5NKA)O7019_.HV+1
MEJ.SJFN.2!A=PX8UK-K-/DU'GC<<G)3;P--V1/O3#<=>N:&.[>DX:.:LM3_<
MK/VA<^U3<:_+YJ]7JMK<XDB+MBR<C*Y9(&$4"6.OK:JR6Y+!Z VI^F70MAV!
MYL9*<K1)<N2<O=OHR[I!:DDNYF7[5&*[;[;%Z@1VC14)H]\ (VV)CO8WP4'U
M;V<+!,V[E=MXD]O8F1M/I4KBB%R6![,Q>?=N1OZ\%MF]4*U[-R>K:V1(&$7"
M&!+&03 KW<DFW<D1CFDFR-21,(J$,22,@V!6ZB>;U$^<V_1=E(K6CNLLZQHD
M$D;7L-%6I_3\DV R#H8[1S7[$XY/)KX_\79Z*FCNK/7O#<PYZ,"9P,5\+E?5
MIJ7$7"1/T7VY"2J1EL<W,5E&2B?M^;BI70."TFA#VU[S?N@'_F0WH;8)JR.6
M<&="CIH_.Z,M3^"Y,UHNTZ3,XU>9QDG^2&92+9T[/S>O<SI(&H72&)3&430[
M9]_D[!]A']@,@@H?2:-0&H/2.(IFAV^<CN>4!U,3<6NH4%O3T+8/]_V6PWT*
M'95!:1Q%L^,R,L9SVY@/*I'D]^52*KW*JRWU]:8,%350&H72&)3&430[:.-]
MO.$QFC+4#$%I%$IC4!I'T>SPC2KRW*[HE:8,]4+>80Z&0D=E4!I'T>RXC"'R
MW(K(W93)O^7K+),YF:5149!+=[N&&B0HC4)I#$KC*)K]$3 :R3N&1_*@(@E*
MHU :@](XBF:';VR2Y]9)S>9=:#G_3)*B6(GX#2D6D7I!8D MD[<O?(9M[1LY
M*(/2.(IF7R%@7)3O=E%W55)DJ9)YZY=K[NJN<36T[=VMMYL5=$0&I7$4S<[*
M."G?[:3>?7F41=E3Y\Z=J!O2.3*HB(+2&)3&430[7".B_&.(*!\JHJ T"J4Q
M*(VC:';X1D3Y;A'U#=^/^_L^J>W49>8>N7.&4#MUX#)PU*AV.L8[^6[OQ/(E
MN15JY6Z[4-4$I5$HC4%I'$6SLS6JR3^&:O*AJ@E*HU :@](XBF:';U23[U9-
M[T5U,7I>?;]7G[$0N=*%CO+J&[_6F*'R"4JC#<T^%1J-AKL7_D%'Y2B:':"1
M3[Y;/KUT?::[K'-04)'4T*PO@H8G>SL]!AV5HVAV4$81^4X+,;U.<EE?Q7F5
M:U$.H,GOS[E0Q2*I=ZWSLLM&C^UGH% M!*71AG:R%>7@[=Y%*= Q.8IF!VET
MC^_6/>SFUMHSOG9-H!O7.3[H9450&H/2.(IFW^Q@M% P.,)A40"U1U :A=(8
ME,91-#M\XYD"MV?Z]F;M!G<.'.J>&MHKS1HZ)D?1[""-4PJ<VJ)NUO6):Y>.
M[69VSA"JD* T!J5Q%,W.>NO^M*/<H(:]0PU[BQKV'C7L36K_AZ$*C*$*W(;*
M].>ENS]#)1641AN:W9_WVC/4/:%H=FK&/07NF[9NHER2V4)D[GX,=4M0&H72
M&)3&430[7..6@M$Q^C'4.$%I%$IC4!I'T>SPC9<*W%[JX'X,]510&FUHU7T8
M6PTY]$;CW9X,%54HFIV<$56!6U1=Q'%2/0,D2HG<A)@TYT&M$4+]%)1&@S8_
MM;=+A>HI%,V.S^BIH).>>O/ZV0[43T%I%$IC4!I'T>S',A@_%1[#3X50/P6E
M42B-06D<1;/#-WXJ=/NI0_>N;DSG>*$VJJ'M[%T'DR#8?5 '5$BA:'9R1DB%
M;B'5[7D";ECG_* F"DIC4!I'T>R0C8D*CV&B0JB)@M(HE,:@-(ZBV>%O/3 )
M8Z+<F,[Q0DT4E,:@-!ZZ+=DZM?[6 _(RH1[K1QD6I'[JP/J19YMW-X]+O*@?
M$KCS_J5W.O-:WJ?>*5L_#-'@U\]FO([48Y(7)!4/Y5"#M^-ACZCUXP[7+[1<
MUH_GNY=:RZS^=2&B6*AJ@O+O#U+JKR^J 38/G9S^!U!+ P04    "  9@']6
MB^F02\D)  !M<P  &0   'AL+W=O<FMS:&5E=',O<VAE970V,2YX;6RUG6MO
MXS86AO\*X19%"VS'UL6W:1(@L4A.%LW,()GNHBCZ0;%I1QA=LI*<S #[XTO)
MBFG*#&,EK^?#Q!>=Y\@Y;\3#UY1T\ICE7XL[(4KR+8G3XK1W5Y;W[_O]8GXG
MDK!XE]V+5+ZSS/(D+.73?-4O[G,1+NJ@).Z[@\&HGX11VCL[J5_[G)^=9.LR
MCE+Q.2?%.DG"_/N%B+/'TY[3>WKA.EK=E=4+_;.3^W E;D3YQ_WG7#[K;RF+
M*!%I$64IR<7RM'?NO.=#KPJHM_A/)!Z+G<>D^BBW6?:U>G*Y..T-JCT2L9B7
M%2*4/Q[$3,1Q19+[\;\&VMOFK )W'S_16?WAY8>Y#0LQR^+_1HOR[K0WZ9&%
M6(;KN+S.'C^(Y@,-*]X\BXOZ?_+8;#OHD?FZ*+.D"99[D$3IYF?XK?E%[ 1(
MCCG ;0+<=H#_3(#7!'B'!OA-@']HP+ )&!X:,&H"1H<&C)N <5VLS6^W+DT0
MEN'929X]DKS:6M*J!W5]ZVA9D2BMI'A3YO+=2,:59S<?/EU_^?4+O;XBOU]^
MI.03([-K&EQ^(3\'H@RCN" ?PSP/*\'\0GXE?]P$Y.<??SGIES)YA>C/FT07
MFT3N,XD<<I6EY5U!:+H0"SV^+W=ZN^?NTYY?N%;@O]?I.^(-_D7<@>L:]F=F
M#[\*<QGN/!L>V,,_S<MMN&,(I_;P0,RMV9D]_$;<6S\[/SR[8RF%MQ615_.\
M9WB_R^<D6Y)9+A9125@XC^*H_$[^JM^X+$52_&U2S(;JFZG50?A]<1_.Q6E/
M'F4+D3^(WME//SBCP6^F<B-A 1)&D3"&A'$03!.-OQ6-;Z-O13.O16.2AS6^
MJSR0L  )HQO8L(95G</#F3MQ)L.I_,M\V*T\,BDW)/4&@XDSW2;5BCK<%G5H
M+>IE6@J9O21RQ!"FFEK#N]84"0N0,+J!37=^O8-W Z]54&1&#H)I51]MJSZR
M5OUCF&8SV2.3FRQ>5QUF02[3.?GK2B2W(O^;_)_<E-G\*_DSS!?D/%V0BS#]
M2C[)O_^G34Q2L>;L*A4D+$#"*!+&D# .@FF2&F\E-3Y*2S%&B@8)"Y PBH0Q
M)(R#8)IH)EO13.PM11:F9+4.\U .0V+Q[" T,1R=O:%^=)Y94W4M/A)&D3"&
MA'$03"O^=%O\Z1O[R>E>S^/X@^I?J_+6/%TKCX11)(PA81P$TRKO#)2),; W
M(.*1G*]R(1*1EKM]QPN=B='&L*;J.H1 :0&41J$T!J5Q%$T7U(XKYARE_6BP
M*/$@:0&41J$T!J5Q%$T7CZO$XT+:$#NFLUA<0U<S:G4U 30GA=(8E,91-%T$
MRA)UK.;9 >V('="Y_-Z^HS,R=#<!-"V%TAB4QE$T70'*WW3L!N=KFY)7VB7V
MO>DL)ZA?"J51*(U!:1Q%TS6G[%=G>)R^!>K+0FD!E$:A- :E<11-%X]R<1V[
MC7MPWS(ZH-.8V9-U%@'4<X72&)3&431=!,IW=:P.W2%]R_BP3F-FS]19 5 #
M%4IC4!I'T70%*!/5L;NH-W=97I)2Y FYS7(9'J6KPB@$I'<X@]("*(TV-$WR
M_G@\GOJMK_2@:?EK:,2F >6E.G8S]<V]:]VR[KQZ+1ZR^$$J:;\UL?6T2(]R
M!J4%4!J%TAB4QE$T?9F7,G?=P5%Z6A=JY$)I 91&H30&I7$431>/,G)=J]=W
M^&!FYW16"]2YA=)H0QOM#&:>/QA/QZVQ#)J5OX9F&\M<9<>Z=COV*EK$8;J0
M Y.<SQ1[(Y-YJ#-*!.K70FD!E$:A- :E<11-5Y/R==WCK'5UH6XOE!9 :11*
M8U :1]%T\2A+V+5;PN<K>:!9R<,0"9-L+0\W4DCYMC..7YQZV_&=1>3OS6HV
MZR':7QE TU(HC4%I'$73]:'L6]>^?#80MR41RZ6H3]!YUH"S4SK+P+A8U6EK
M8+-5];W\[F:#ENU'H?O&H#2.HNG55?ZJ:_=7S]-T'<8DVETC7?V]QUF8&LL,
M70$+I050&H72&)3&&UI;^+X[-"^5=Y75ZMJMUL/G)M!5K5!: *71U]"(40-0
M1];=M[PGCC,:/2<!Y;6Z=J_U57,3^<:',,^CUO9&Y4 M6B@M@-(HE,:@-(ZB
MZ2)39JX[/<Z4!>J^0FD!E$:A- :E<11-/[-3N:^>?6GM6Z<L=GQ7$4%I04/;
M/:Q[0\,$B$+3,BB-HVBZ/I3!ZMD-UJY-K1W760]0GQ5*HU :@])X0]MK:I]I
M:#QEMGHOK'U]^8  =5&AM !*HZ^A&9M9Z&[QAJ:?!S.9.D/_F>+O7 ; ON:5
MQM$JNHT%N1?Y7':LX:K6PB)+Y)$AFI-P/J^&D$(.(',1/81R4Z-"L-<%P%X8
MP#.8)9/V<($]XQ][RO\Q'%!/.:">W0']K"ECF>4B6J4F851O1^F#W#;+OQM5
M O5"H;2@H>DJ:3MET)0,2N,HFJX2Y8-Z=A_TM=/BUZR;MN]*9QU!E[Y":11*
M8U :1]%TP2EKUAL=98KL02U:*"V TBB4QJ TCJ+IXE$^KF?W<=\\1=YW%XW?
MP\WL^]%9'U#G%DIC4!I'T71]*)/7LYN\P)['=.6"]L)[^]YT5@G4I872&)3&
M431=)<JE]>Q+;E^\=)(]OO-8 [5CH33:T-KNQ+BE= ;-RE$T_6IHRFCU[49K
M_=W_4O*;4<0D 7_?L'2-(X4]5]?J0FD42F-0&D?1= TH,]6WFZEOF_>\^&V@
M/7O7(PB4%D!I%$IC4!I'T72-*8?6=X\RU?&AOBV4%D!I%$IC4!I'T73Q*(?7
MMSN\;YWJ^/M7*3!/=>S[T5D?T 6N4!J#TCB*INMCYYJN=GL7] V ;_)/)VV)
M0"U;*(U":0Q*XRB:+A'E[?IV;Q<W&_9-"U?;LV'[WG16"=20A=(8E,91-%TE
MRI#U[6ME7YP-V^,[MR-0YQ5*HU :\\W+6=MS:X[*JM=?>:J^W5,]:#9LN!"!
MN9F ^J90&H72&)3&431= \HW]8^S./8J_!8EZ\0^%88NC(72 BB-0FD,2N,H
MFBXP9;GZQUD8ZT.=6"@M@-(HE,:@-(ZBZ3<Z4'[M\(6%L1T7/MIQ7473T&QG
MI6ST $U+H30&I7$43=>#\FZ'=N_6=$K&01=,^5*= %1?>\LV8-FS=Y8/U+N%
MTBB4QJ TCJ+I&E/>[? XWNT0ZMU":0&41J$T!J5Q%$T7C_)NAW;O]N5[\T#7
MW4)I04.S+%AOZ@_U9J$TCJ)MZM_?N>E?(O)5?3_'@M0VVN8N>MM7M_>,/*_O
ME-AZ_<)Y'VSN_*@PFQM17H7Y*I(#5BR6$CEX-Y93[7QS;\?-DS*[KV\M>)N5
M99;4#^]$N!!YM8%\?YEEY=.3*L'V#IMG_P!02P,$%     @ &8!_5JN-M9<V
M P  >0D  !D   !X;"]W;W)K<VAE971S+W-H965T-C(N>&ULK9;;CM,P$(9?
MQ0H(@02;8W-8VD@](9"6W8BR<(&X<)-I:Y'8Q7:V\/;83C=TVS0J$C=M[,S\
M_C\[]GBX8_R'V !(]*LJJ1A9&RFWU[8M\@U46%RQ+5#U9L5XA:5J\K4MMAQP
M89*JTO8<)[0K3*B5#DU?QM,AJV5)*&0<B;JJ,/\]@9+M1I9K/79\(NN-U!UV
M.MSB-2Q WF\SKEIVJU*0"J@@C"(.JY$U=J^GB8XW 5\([,3!,](D2\9^Z,:'
M8F0YVA"4D$NM@-7? TRA++60LO%SKVFU0^K$P^=']7>&7;$LL8 I*[^20FY&
M5FRA E:X+N4GMGL/>YZ!ULM9*<POVC6Q06*AO!:25?MDY: BM/G'O_;S<)#@
MAF<2O'V"=YP0G$GP]PF^ 6V<&:P9EC@=<K9#7$<K-?U@YL9D*QI"]2HN)%=O
MB<J3Z6+Z?CZ[OYFCNW?HYFY\BZ9W7^:WX]O/"_1R!A*34KQ";]#]8H9>/G\U
MM*4:4V?:^5Y_TNA[9_1=#WUD5&X$FM,"BJ<"MC+;.O8>'4^\7L49Y%?(=U\C
MS_&\#D/3R]/='CM^.X&^T?//ZBTEFA&1ETS4'-"W\5)(KK[.[UV3U6@%W5IZ
MQUZ++<YA9*DM*8 _@)6^>.:&SMLNT/\D]@0[:+&#/O5T@DM,<WB-EK FE!*Z
M1FR%ML )*[K &[6!4=,GRT/J^6$X2.*A_7#(=!KGQT$4^G_CGM@=M'8'O7:S
MLA;7*.,L!R@$6G%6H9)A*KJ\-E+AH0?/=Z(3K[U#=L\_ZIGZL&4)+V"Y4>[5
M(?BS)AP*=6C(3=,2Q!R/:C'FMQG*@-==B.$)HA<'R<!QCA![G?P[8M0B1KV(
M-R 4HCJGU^J,IZJ!%%*69>?7K%?O(J,-<'0R,6\&?I2$3O?W%[= \05 &?ZM
M"J T-)JD"R0^->!YB1>[R='2= 0F@>_$9YPFK=/DLHT-M.C?TLG)5@W=0>!$
MT9'1T[CCK=\8M0^J6 5\;8J[0#FKJ6S*0]O;WA_&IFP>]4_4O:*Y!OR5:2XE
M'['ZHJA ):R4I',5*5>\*?1-0[*MJ95+)E7E-8\;=3<"K@/4^Q5C\K&A!VAO
M6^D?4$L#!!0    ( !F ?U;A&FP'D04  #0M   9    >&PO=V]R:W-H965T
M<R]S:&5E=#8S+GAM;+6:;6_B.!2%_XK%KD8STDZ)[;S0#D5JZ^G.2)VV&MI=
MK4;[(06W1,T+ZY@R\^_7"2DA$"Y-=/.E).#[V#[-"3XXPV6BGM.9E)K\C,(X
M/>W-M)Z?]/OI9"8C/SU*YC(VGSPF*O*U.55/_72NI#_-BZ*PSRS+[4=^$/=&
MP_R]6S4:)@L=!K&\521=1)&O?IW+,%F>]FCO]8WOP=-,9V_T1\.Y_R3'4M_/
M;Y4YZZ\ITR"2<1HD,5'R\;1W1D\$=[*"O,5?@5RF&\<DF\I#DCQG)U^GISTK
M&Y$,Y41G"-^\O,@+&889R8SCOP+:6_>9%6X>O](O\\F;R3SXJ;Q(PK^#J9Z=
M]@8],I6/_B+4WY/E%UE,*!_@) G3_"]9KMHZ7H],%JE.HJ+8C" *XM6K_[,0
M8J. VGL*6%' WEK BP+^U@*[*+!S9593R740OO9'0Y4LB<I:&UIVD(N95YOI
M!W'V?Q]K93X-3)T>C2^^?!;W5Y_)S26YN;\;WYU=BZ_7?Y+SLZNSZXO/Y.KF
M[)J\%U+[09A^(!_)_5B0][]_&/:UZ3UC]"=%3^>KGMB>GH2<'!%._R#,8JRF
M_.+MY;2F7+R]W*J6]XUD:]W86C>6\_A>WJ-Y9TK.96R.-+D-_9B(()V$2;I0
MDORX,A^3KUI&Z;]U6JWH=CT],_M).O<G\K1GW)Q*]2)[HW>_4=?Z5*<<)DP@
MP2JJ\K6J'**/[A+MAW5RK<J<O"R[E;V,7.K8EN<-^R^;2NRV8]QUG>-!M9W8
M;<<'MN?RLEUE_/9Z_#8X_BN9IB?&MDK)6)-YHK)[6]U\5AAWH_^/'O5<RK;F
M4]?NF#N>O34?<%@M_VG.>M(./.DD?B):JLC<;Q]TW6R=G5DX-G=MU]F:[6X[
MZGC<8MNS!<?3<K;N>K8N.-MOP=18?4K&VM<R)>=^_$Q^?)/1@U2U1@=I38V.
M"1-(L(J*WEI%K]/;IX>I*B9,(,$JJ@[6J@[:W3[!LOI!D3JED#BB!>>@2,=K
MD8Y!D6[]7V;Q/'DFMRK1Q>K3'#XI/P*-#%*;7G*8,($$JZA)K7(!:75JY0*/
M)"PJ36#1JM)NK,UI.S_#=0T,C042;4"'E2I7XQ1<EH*FOC&7'V1L&-WX D1=
MC&/1JK*6RW'*N_4VN-QO+"TF36#1JM*628'"46&_MUNLY>N]C002;4"'E2KC
M!87S1=V*^Z"GD2)"H20F36#1JG*6^86ZW7H:-=&@T@06K2IM&6HHN+H'/-TB
M%=1[VJN)R(YMV=L1N4V/AY4H@PB%DTB=9^^6">Q9I%10*(5)$UBTJIQE9*''
MW7H6-;R@T@06K?HS;AE?&+B&W^]9N*Z!9PO0IF?Y@+H[O^&UZ?"P$&788'#8
M&.O$K)__\=6T\.L[/YI_(G=JD6K0MS"W\6_9F#2!1:MJNK%)T/$N >XV >X^
M01?1A)71A+7<*BCJ-NUF4\?FUM:/S77MN#486-NV["(GL#(G,#@G@+8\])4*
MLQM?/Y@T@46KZEJF"N9T:TW4A(%*$UBTJK1EPF#P%LE^:[J[JU>7,]?;WO:"
M.V@07=N #BM1!@(&!P+8O#,EX10+TQM?8ZC['%BTJK)EP&"#;NV+&C90:0*+
M5I6V#!L,WB#9;]_C'?NR >46W=['A3MH8M\NL@$OLP&'LP%HW\MDH4#WPO"F
MEQ@J36#1JL*668/33MW+42,'*DU@T:K2EI&#PSLA^Q^A8;ON=5SJ;G_WPOP&
MYFT#.BS$QJ-$<$" S1N\P%^],+SQ%8:Z<X%%JPI;)A)N=VM>U%""2A-8M*JT
M92CA\%;'?O,Z.P^L48N[WO:#;1=P!TW<BYHA^AM/J&;/$W_SU5,0IR24CP9O
M'7FF-[5Z1'=UHI-Y_M#J0Z)U$N6',^E/I<H:F,\?DT2_GF3/P:X?E![]#U!+
M P04    "  9@']6/B-W4MP.  !2W   &0   'AL+W=O<FMS:&5E=',O<VAE
M970V-"YX;6RUW6]OV\8!Q_&W0GA#T0%;+?X5E3D&&O/^=$C:(.DV#$4?,#9C
M"Y%$CZ*3!MB+'RDK/A]%G77*-WV0VK+N<Y3]@RC>CQ+//M7-A_5-5;7!'\O%
M:OW\Y*9M;Y^=GJXO;ZIEN?ZAOJU6W4_>U\VR;+MOF^O3]6U3E5>;0<O%:329
M9*?+<KXZ.3_;W/:Z.3^K[]K%?%6];H+UW7)9-I]?5(OZT_.3\.3+#6_FUS=M
M?\/I^=EM>5V]K=I_WKYNNN].'Y2K^;):K>?U*FBJ]\]/?@R?Z7S6#]C<XU_S
MZM/ZT==!_U#>U?6'_IN?KIZ?3/HMJA;59=L39?>_C]5%M5CT4K<=_]VB)P]S
M]@,??_U%EYL'WSV8=^6ZNJ@7_YY?M3?/3_*3X*IZ7]XMVC?U)UUM'U#:>Y?U
M8KWY-_BTO>_D)+B\6[?U<CNXVX+E?'7___*/[2_BT8#.&1\0;0=$PP')G@'Q
M=D!\Z(!D.R Y=$"Z'9 >.B#;#LB& [(] Z;; =-#9\BW _+-7_?^S['Y6Q9E
M6YZ?-?6GH.GOW6G]%YM ;$9W?\+YJL_NV[;I?CKOQK7G+W_Y606_BC>O@D*\
M^#7XOJC:<KY8!S^735/VL?I+\+?@GV^+X/L__^7LM.UF[,>=7F[U%_=ZM$</
M@U?UJKU9!V)U55V-C%=/C(\<P&GW4!\>;_3E\;Z(G.(_[E8_!/'DKT$TB:*1
M#;IP#__ELNV&AYOADY'AA7OXC[?-P^QCP\43&U^NG+/+@X>'^=@?PSV\J"X?
M9A_[U>G#AX>.OV3\D-QXX\5[O+<W==/^[=>J609%]:X-?GO9W2'XJ:V6Z]_'
MDGJO)>-:OXMXMKXM+ZOG)]T^8%TU'ZN3\^_^%&:3OX^EA,0*$A,D)DE,D9B&
M,"MYR4/R$I=^OHG;?+5NF[MN+]Y_V5;=+&W0/6-6P;KM_KT*;JOFLOMAM_\?
M"Z-S M\PDEA!8H+$)(FI>VRVP?K7=Q_/)S],XK/3CX]#!LUHA2Q]"%GJ#-E/
M7T)5_=&]3EV/IL@I^*:(Q H2$R0F24S=8^FC%$6S:);,!CG:O5LXF\WBR</=
MK(1D#PG)G GYN5S5P45W+!/\]JI:OJN:WX/_!9O]X<NZ7#W<.!8<)^P;'!(K
M2$R0F"0Q16(:PJP03A]".$5?A4W)Y)%806*"Q"2)*1+3$&8E+W](7N[U*NQ]
M-U%0+NN[53L6/"?F&SP2*TA,D)@D,76/98_WE9/-?X.=)32IE:G90Z9F7B^Z
M@JLN9&-I<C*^:2*Q@L0$B4D24[/=-,59' VR=,24@2-&X<2LJDV>?G)Z6:^N
M@[;?-?8Q<CPWN3'?.*%:@6H"U22JJ:UFO4R?Q-ETE@]2=<RTSE@]6JP-B9?\
MW8VOF_FR"M[T"Q*N P'W?-[)([4"U02J2513J*8IS<YH9#(:H4<$6XZ*(*D5
MJ"903:*:0C5-:78$33,0.I=_B05:]PS>J43[ E03J"9136VU?H?[>)TV2X=[
MY&]1!X2F#PC=A<"K^=6B7%T%+\K5A\<[8?'SZ^"GU<<N>7T,UW\-7KZ\<.^.
MT5X U0I4$Z@F44VAFJ8T.YNF1@A3=G>,E@JH5J":0#6):@K5-*79$30]1>@N
M*CQ7ZMR:=P+1>@+5!*K)K6:U42,+; J=55.:G2U3/X3.-6;DI1[:2:!:@6H"
MU>16&[XX2Z-T&#BT<Z T.W"F=0C]:H=^?6\T56CA@&H%J@E4DT_\^J?!YZIL
MUJ/[3'([-*79,3-%1 @U$6['.V=H%X%J M4DJBE4T^%(NS'-\_'312)32D3N
M4F+?86J_JKQ95'Y;+^[Z,\K7W5'KI?- U3V3;^I0K4 U@6H2U12J:4JSTVFZ
MC2A$#U0CM+I M0+5!*I)5%.HIBG-CJ"I+B+GNK3O@:I;\TY@M'/XEL^2*!V<
ME%J@LPI4DZBF4$U3FITMTTE$?IW$ON,&-^,=*O=&17M?31?H=@A4DZBF4$U3
MFATS4T5$[BKBX.,&M^.=,[1J0#6!:A+5U%9[_*2?YF$VJ+>V][*.!Y(\FNXY
M(##=0.1^CX'?64INS#LQ:#. :@+5)*JI8[1@](DJW0E5W$5OFNQ)E5GNC]S+
M_4<>9AY^TI)[?N\@H@4!J@E4DZBF4$U3FIU94R-$[-L8(K0S0+4"U02J2513
MJ*8IS8Z@*18BOV+AB";+/8-W*O/1?B?.T^$1*5HGH)I$-85JFM+LP)F*(7)7
M#,?OIP][DZ%[>N\THLT$J@E4DZBF4$U3FOV)#Z;!B"?H;CI&:PI4*U!-H)I$
M-85JFM+L")J:(G:_!<-SC=BM>2<PW%DN"&?Y9)9,![MD=%J!:A+5%*II2K/#
M90J(V*^ ..(UH'L&[\#=:_;G9 Q/OR[0.06J2513J*8IS4[;HP]08BH)-^,=
M*?=&I?LK"70[!*I)5%.HIBG-CIFI)&*HDG [WCE#*PE4$Z@F44W%NV5#/(GC
M9-!)C-PMF^5Q.+YZ')M.(B8["3?F'1FTDT U@6H2U=0QVF@G$>]V$F&:)I-D
M3RD1FU(B_E:EQ->\O=J]4=[Q1)L*5!.H)E%-H9JF-#O(IJF(V:8B1IL*5"M0
M3:":1#6%:IK2[ B:IB+^YDV%>P;O5![:5*#3"E23J*9035.:'3C35,3'-17]
M^ZM?5:NKNBWM]U8?W%&X)_;.(=I1H)I -8EJ"M4TI=F?#6PZBH3M*!*THT"U
M M4$JDE44ZBF*<V.H.DH$K2C<&O>"43?28%J(MGM3Y)T]RW2$IU5H9JF-#M;
MIJ)(OGE%X9[!.V_H)SZAFMAJPQ>FPW=(2W16A6J:TNR\F9(B84H*-^,=*O0#
MFU!-//$+VU^@2'0[%*II2K-C]NB2#E!)X7:\<X:6%*@F4$VBFDIVVX<P3V?#
MSQ(>N]LTG.QYXT1B2HJ$+"G<F'=DT)("U02J2513R6ZWD(1I$N]D9N1^\23/
M]URM(3$51')\!7'D=1S<,WHG"^T74$V@FD0UA6J:TNR4FGXA8?N%!.T74*U
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
M4+SL@LL;R39%(SEG4K6EQ>5:?3D UP;J^9(Q>;S1$]3?(L-_ 5!+ P04
M"  9@']6K O02'($  "W$P  &0   'AL+W=O<FMS:&5E=',O<VAE970V-RYX
M;6RU6&MOXC@4_2M6=K7J2-,F=D(2NH!$@6J0.CL5M+,KC?:#22Y@31Z,8Z#=
M7[].2 ,AQMMVF2^0Q[W'YUQLWX,[VY1_SY8  CW%49)UC:40JVO3S((EQ#2[
M2E>0R#?SE,=4R%N^,+,5!QH627%D$LMRS9BRQ.AUBF?WO-=)UR)B"=QSE*WC
MF/+G&XC2;=? QLN#"5LL1?[ ['56= %3$(^K>R[OS HE9#$D&4L3Q&'>-?KX
M>D"*A"+B*X-M=G"-<BFS-/V>WXS#KF'EC"""0.005'YM8 !1E"-)'C]*4*,:
M,T\\O'Y!ORW$2S$SFL$@C?YDH5AV#=] (<SI.A*3=/L)2D&M'"](HZSX1-M=
MK.L:*%AG(HW+9,D@9LGNFSZ5A3A(P,Z)!%(FD-<FV&6"70C=,2MD#:F@O0Y/
MMXCGT1(MORAJ4V1+-2S)?\:IX/(MDWFB-QU\&@T?[T;HRRT:CFY'D\EHB![Z
M?Z'^=#IZF**+NW'_9GPW?AB/IA_0Q1 $95'V 5VBQ^D07?SZH6,*22,',X-R
MR)O=D.3$D$,(KI"-/R)B$:)('[P^'=?332F^J@"I*D */.<$WH F-*1H AM(
MUH#Z"TB"9_3M,\0SX'^KY&GQ\G5WG:UH %U#+JP,^ :,WF^_8-?Z727V3& U
MZ78EW2[0[1/2OZR 4\&2!;I+LPP-*.?/<F?84AYFZ-N=C$9C 7&FK()]SBJ<
M":Q6!:>J@J.= '_(W22@*R9HA**\#L%A'532=WBM B_?)S<]OXW;+:=C;@Y%
M-<.PX]BVAZNX&M]6Q;>EY3M.!$T6;!8!HED&0DE1"Z$N*%+],#L<]U!#VW?:
M:@5NI<#5*KCGL@UQ\?P1P8\U6\FN(!!-0A2!W)"7::2NNMN@XGC$:Q\5O1G5
M\CW'\M6,O8JQIV4\A#EP#B$2]*FL.EIP.5E41+T&A;;=)K9UQ+091JR6Y9(3
M5/V*JJ^E^I5&:UJTR'XDFS1- E"1]!NC7RI9*N*T--L5S;9^U4F+$C:JJF*J
MQ7G#5/[_.#6AV-JW6.LG3/<2M%9YU817Q>FF/#ZP!OB_-AK@B=P57WKC5%:%
M!8 NQA-I!G0M4H_\UNYP+K1Z'?8& 9.?UR;Q6=W"N=#JE=C[!:QMQ.]HE7K
M-ZS>,P#51>_M =;[@U?UVQ*CM@I=RSO>3?5#O4/%WC1@O6MXYR;4[/^7Q'.(
MW]B%%(&8N&WOQ":TMPI8[Q7&R08RD=-5$VSV^TO/]=QC>HHPXF#?MT[PVQL#
MK'<&[ZQKL_E?.K[K8?N8N"+0]8E/3O#>NP2LMPGOY-VT ^KIT(S3S8:]:<!Z
MUW#+$FEHF-Q^6)()OCX]+\[E&LX 5/];NK<-1&\;FIX3):E '()TD;!_(%3^
M-]5BOD'W&8#JNO>V@^AMA]H9HHN(T1F+F'A6GCF4H*W:"B<N;FS!RL"VY[BM
MH\EI'IRJY$=:GRE?R%DG5\A<9EI7GH3@NU.BW8U(5\5!RRP5(HV+RR70$'@>
M(-_/TU2\W.1G-]597>]?4$L#!!0    ( !F ?U:-(%*4- ,  .8.   9
M>&PO=V]R:W-H965T<R]S:&5E=#8X+GAM;+5776_:,!3]*U8V39TT-;$A7QU$
MHM"NE6A!T*Z:JCT8,! UB9EMH/WWLY,T82UQI6AY(7'B<^ZQ#[G7M[.G[(FO
M"1'@.8X2WC760FS.3)//UR3&_)1N2"+?+"F+L9!#MC+YAA&\2$%Q9"++<LP8
MAXD1=-)G8Q9TZ%9$84+&#/!M'&/V<DXBNN\:T'A], E7:Z$>F$%G@U=D2L3]
M9LSDR"Q8%F%,$A[2!#"R[!H]>':.4D ZXV=(]OS@'JBES"A]4H/K1=>PE"(2
MD;E0%%A>=J1/HD@Q21U_<E*CB*F A_>O[)?IXN5B9IB3/HT>PH58=PW/  NR
MQ-M(3.C^BN0+LA7?G$8\_07[;*YM&V"^Y8+&.5@JB,,DN^+G?",.  A5 % .
M0*GN+%"J<H %#CJ,[@%3LR6;NDF7FJ*EN#!1KDP%DV]#B1/!M']U,;@?7H#1
M);@=W8+1^&+2N[N^_0&&H^D4]'N3R:_+T>2A-QE,P<F "!Q&_&O'%#*V8C#G
M>9SS+ ZJB#,@\U/0@M\ LA "]],!./G\AL:4T@O]J-"/4MY6!>]H0Q@68;("
M0\HYZ&/&7N1_=8_9@H/'H9P-K@6)^>]CDC/J]G%J]3V<\0V>DZXA__"<L!TQ
M@B^?H&-]UPAO%<);.O;@C@H<'1.5P>P4IKZI7=#R7,]RK(ZY.Q*O7<1K:^,A
MJV6!QQL2SP@[NAE:>,W-L MQ=G,NV@T(=PKA3CT7,YASX*+3MET/'C?1+<*Y
M'YD(M29JX37WPBO$><V9Z#4@W"^$^_5,]-^9Z$/?\5K'3816F7.MCVQ$6AOU
M^)K; 0]J FS.R9S[/VLOZP'49NUJ,W/</Y^D!5NN7^%FF<BA/I-+-UV]FUI\
MW1TI$S]L-^AF$V4!EG4!:K.WQDW[G9O0L9%K5=E99G2H3^G23E]OIQ9?=TO*
M$@#=!NULHD# LD) ;1[7V.F]L[/M^-"M,+/,[%"?VI'5UI]Z]/B:&X+*2H"L
M!H^O350)5%8)I,WDU6;FN,,C+(2V__;L8QYT+:H#O,%L%28<1&0I<=:I*PE8
MUE1E T$W:2,SHT*V1>GM6C:BA*D)\OV24O$Z4+U1T=H&?P%02P,$%     @
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
MX#I W5\Q)@\3G:#^6 C_ %!+ P04    "  9@']6^]"+8V,"  "F!0  &0
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
MB[P\7 !/0)H _'XFA'X\,3=H?B 9_PM02P,$%     @ &8!_5E*#BA'O @
MX H  !D   !X;"]W;W)K<VAE971S+W-H965T-S8N>&ULK99=;YLP%(;_BL6D
M:9.V\AG2= E2DG9JM7:-FFZ[J';AP"%8!4QM)VFE_?C9AM"0+ZT3-XEMSGEX
M7_L I[^B[)$G  (]9VG.!T8B1'%FFCQ,(,/\A!:0RRLQ91D6<LKF)B\8X$@G
M9:GI6)9O9ICD1M#7:Q,6].E"I"2'"4-\D668O8P@I:N!81OKA3LR3X1:,(-^
M@><P!?&CF# Y,VM*1#+(.:$Y8A /C*%]-K8ME: C?A)8\8TQ4E9FE#ZJR54T
M,"RE"%((A4)@^;>$,:2I(DD=3Q74J.^I$C?':_I7;5Z:F6$.8YK^(I%(!L:I
M@2*(\2(5=W1U"96ACN*%-.7Z%ZW*6*]CH'#!!<VJ9*D@(WGYCY^KC=A(L/T#
M"4Z5X&PG> <2W"K!U49+9=K6.18XZ#.Z0DQ%2YH:Z+W1V=(-R=4Q3@635XG,
M$\%X.+FZ'UZCZ?WM^!OZ< X"DY2C[Y@QK#;X(_J,>((9\+XIY/U4EAE6[%')
M=@ZP;0?=T%PD'%WD$41-@"F%UFJ=M=J1<Y1X#N$)<NU/R+$<9X^@\;^GVT?D
MN/7FN9KG'N#=QC$'(4@^1T,N1QP]7,L0="4@X[_W;5C)\_;SU"-[Q@L<PL"0
MSR0'M@0C>/_.]JTO^\RV!&M8]VKKWC%Z,!4T?$2T4,\B1_ ,+"1\^XQ+SR7(
MUR#U5ED&7=NRO;ZYW#2S&]7SNI9=1S54=FJ5G:,J+YX61+R@6RT3/=Q -@.V
M]V".<MYZ,"W!&I;]VK+?<DWZ;5IO"=:PWJVM=]NJR>Y.M76\CF5MU>1NE&]O
M1C54GM8J3_^C)M$?-):JY<<'Y^)HI1ZEO_6X6H(U-J)7;T2OY4KMM6F])5C#
MNFV]?G:MMFJU(FV6H>UW=EZ@>\)<U]EY@YH;O4(&;*Y;*(Y"NLA%^2&N5^LV
M;:B;DZWUD6K?= _RBBE[OQO,YD2Z2B&62.ND*]^'K&RGRHF@A>Y(9E3(_D8/
M$]F" E,!\GI,J5A/U WJIC;X"U!+ P04    "  9@']6/*.ZP, #  #=#0
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
MKKJ:H]C=>.P:BJ?YI<&<*\63_'$%) *1#=#O%YRK?2-S4-X[#?X%4$L#!!0
M   ( !F ?U:(J@81CP4  ,8<   9    >&PO=V]R:W-H965T<R]S:&5E=#<Y
M+GAM;+6976_;-A2&_PKA#4,+K+%X*$IB9AM(''<-T*Q!G*P7Q2X4FXZ%ZL.5
MZ"0#]N-'R8IH213MQ.Y-8LGGO'Q)2N<AS<%3DG[/EIP+]!R%<3;L+858G?;[
MV6S)(S\[258\EM\LDC3RA;Q,'_K9*N7^O$B*PCY8EM./_"#NC0;%O>MT-$C6
M(@QB?IVB;!U%?OKO.0^3IV$/]UYNW 0/2Y'?Z(\&*_^!3[FX6UVG\JI?J<R#
MB,=9D,0HY8MA[PR?C@G-$XJ(OP/^E&U]1GE7[I/D>WYQ.1_VK-P1#_E,Y!*^
M_/?(QSP,<R7IXT<IVJO:S!.W/[^H?RPZ+SMS[V=\G(1?@[E8#GM>#\WYPE^'
MXB9Y^L3+#A4&9TF8%7_1TR:60@_-UIE(HC)9.HB">//??RX'8BL!.QT)4"9
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
M2N?T3,GB57=6321;F@9GPJ2J 3-<J(X6N0Y0SV>,R?N)WJ#ND>,_4$L#!!0
M   ( !F ?U;(1MT\Y (  'P*   9    >&PO=V]R:W-H965T<R]S:&5E=#@Q
M+GAM;,56VV[:0!#]E9%;5:G4Q!>PL5.PY-BD0:(DPB%]J/JP@0&LV%ZZNT#Z
M]]VU'0LB!R414E[P7N:</7,\7J:[I>R!+Q$%/&9ISGO:4HC5N:[SZ1(SPL_H
M"G.Y,Z<L(T).V4+G*X9D5H"R5+<,P]$SDN2:WRW6;IC?I6N1)CG>,.#K+"/L
MWP6F=-O33.UI89PLED(MZ'YW1188HYBL;IB<Z37++,DPYPG-@>&\IP7F>>BI
M^"+@+L$MWQF#RN2>T@<U&<QZFJ$$88I3H1B(?&PPQ#151%+&WXI3JX]4P-WQ
M$_MED;O,Y9YP#&GZ*YF)94]S-9CAG*Q3,:;;*ZSRL17?E*:\^(5M%6MH,%US
M0;,*+!5D25X^R6/EPP[ ;+\ L"J ]5I JP*TBD1+945:$1'$[S*Z!::B)9L:
M%-X4:)E-DJNW& LF=Q.)$WX<7O6CR; /UY<PO![].!T.[OH1!''<OXTA&/?E
M:AC<RJ7!",)@%$0!!*,()J.!6HQOY1Z<1"A(DO*O< J3.(*3SU^[NI#JU!GZ
MM%)R42JQ7E 2X?0,6N8WL S+:H"'KX>;^W!=>E(;8]7&6 5?ZP6^,6XP7R.'
M.:,9]!\%LIRD$!:O!!D'DL]@2//%Z5#6X0P"SE%P^#V4/# 0F/$_31Z4A[:;
M#U6?[#E?D2GV-/E-<F0;U/POGTS'^-[DR)'(]OQIU?ZT#K'[MU20M"G#$F87
M,'6';'RS[=I&QW6Z^F97?4.@87F.9[?KP#UE[5I9^Z"RLDJ;I!W$O=7\(Y'M
MI6C7*=H?49SV,?TY$MF>/T[MC_.^XBQASF[-V8;K&<]*LR',,SNVU5R8G5I5
MYZ"JW3LS;E)W$/Y6_X]$MI>I6V?J?D1]NL?TYTAD>_YXM3_>^^K3:[@\'<]S
MO>>79T.@81JV_/-[5J/Z3F^@^K*?A"V2G$.*<PDUSCJ2@Y6]3CD1=%6T"_=4
MR)=5#)>R/42F N3^G%+Q-%$=2-UP^O\!4$L#!!0    ( !F ?U8(V4HLYP(
M .$&   9    >&PO=V]R:W-H965T<R]S:&5E=#@R+GAM;*U5VV[:0!3\E2.W
MJE*)X@NWDH(E8IP4*1@$I%45Y6$Q!W!C>]W=!=*_[^[:.(0"ZD-?V-LYLS-C
M,^[L*'OF:T0!+TF<\JZQ%B*[-DT>KC$AO$HS3.7)DK*$"+ED*Y-G#,E"-R6Q
MZ5A6TTQ(E!IN1^^-F=NA&Q%'*8X9\$V2$/;[!F.ZZQJVL=^81*NU4!NFV\G(
M"J<H'K(QDRNS1%E$":8\HBDP7':-GGWM-52]+O@6X8X?S$$IF5/ZK!:#1=>P
M%"&,,10*@<AABQ[&L0*2-'X5F$9YI6H\G._1;[5VJ65..'HT_AXMQ+IK?#9@
M@4NRB<6$[KYBH4<3#&G,]2_LBEK+@'##!4V*9LD@B=)\)"^%#P<-=O-,@U,T
M.,<-]3,-M:*AIH7FS+2L/A'$[3"Z Z:J)9J::&]TMU03I>HI3@63IY'L$^[4
MOQOZP<SO5V ZN L&MP.O%\S >YC.1D-_ H/@=C09]F:#40"]H ^^-PI&PX$'
M?7_L!WT_\'[ 51\%B6(. 6&,J,?R$3Y!+PSI)A4<)AABM"7S&.%QB,D<V9,\
MGJT9(GA:(3)^>/0P[</5^X\=4TB!BJ89%F)N<C'.&3&V T.:BC4'/UW@XBV
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
M>D4#!!(?UNN8=W1J[P#,<Y=P^RVNK6AB M*)!00QOS<,70-\ Q.0\=J]C)-
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
M @  $0              @ &O    9&]C4')O<',O8V]R92YX;6Q02P$"% ,4
M    "  9@']6F5R<(Q &  "<)P  $P              @ '+ 0  >&PO=&AE
M;64O=&AE;64Q+GAM;%!+ 0(4 Q0    ( !F ?U:T7.[.70<  ),P   8
M          " @0P(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"% ,4
M    "  9@']6Q5JN2EL'   +'P  &               @(&?#P  >&PO=V]R
M:W-H965T<R]S:&5E=#(N>&UL4$L! A0#%     @ &8!_5E&(BK:Y @  AP@
M !@              ("!,!<  'AL+W=O<FMS:&5E=',O<VAE970S+GAM;%!+
M 0(4 Q0    ( !F ?U:K^;L^D0@  , E   8              " @1\:  !X
M;"]W;W)K<VAE971S+W-H965T-"YX;6Q02P$"% ,4    "  9@']6Z^V@P,8(
M  #))P  &               @('F(@  >&PO=V]R:W-H965T<R]S:&5E=#4N
M>&UL4$L! A0#%     @ &8!_5A?W:OA$!@  :"D  !@              ("!
MXBL  'AL+W=O<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( !F ?U8W
MW(%]_08  !L/   8              " @5PR  !X;"]W;W)K<VAE971S+W-H
M965T-RYX;6Q02P$"% ,4    "  9@']6E[SD?JD:   930  &
M    @(&/.0  >&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%     @
M&8!_5C*>NCB(!0  T0P  !@              ("!;E0  'AL+W=O<FMS:&5E
M=',O<VAE970Y+GAM;%!+ 0(4 Q0    ( !F ?U;IO#SU?P(  (H%   9
M          " @2Q:  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L! A0#
M%     @ &8!_5IL)F]1] @  504  !D              ("!XEP  'AL+W=O
M<FMS:&5E=',O<VAE970Q,2YX;6Q02P$"% ,4    "  9@']6E." :&($  "%
M"0  &0              @(&67P  >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM
M;%!+ 0(4 Q0    ( !F ?U:JN!J9P0(   0&   9              " @2]D
M  !X;"]W;W)K<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ &8!_5B&^
M/9N% P  I0@  !D              ("!)V<  'AL+W=O<FMS:&5E=',O<VAE
M970Q-"YX;6Q02P$"% ,4    "  9@']66%?.1'\"  "P!0  &0
M    @('C:@  >&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    (
M !F ?U:=PB<WD@8  ,4/   9              " @9EM  !X;"]W;W)K<VAE
M971S+W-H965T,38N>&UL4$L! A0#%     @ &8!_5N9R>]D9!@  +A<  !D
M             ("!8G0  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"
M% ,4    "  9@']6DP+[!!<%  #&"P  &0              @(&R>@  >&PO
M=V]R:W-H965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( !F ?U; 7#R@'@<
M #<0   9              " @0"   !X;"]W;W)K<VAE971S+W-H965T,3DN
M>&UL4$L! A0#%     @ &8!_5E?)<ZGE P  5P@  !D              ("!
M58<  'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    "  9@']6
M+-5IO[X%  !J#   &0              @(%QBP  >&PO=V]R:W-H965T<R]S
M:&5E=#(Q+GAM;%!+ 0(4 Q0    ( !F ?U87R]0C.P(  /8$   9
M      " @6:1  !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#%
M  @ &8!_5FW1$]Z&!   _0D  !D              ("!V),  'AL+W=O<FMS
M:&5E=',O<VAE970R,RYX;6Q02P$"% ,4    "  9@']67?69"G,'  #$#P
M&0              @(&5F   >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+
M 0(4 Q0    ( !F ?U:EEIY^) (  -,$   9              " @3^@  !X
M;"]W;W)K<VAE971S+W-H965T,C4N>&UL4$L! A0#%     @ &8!_5OWLHH7=
M&P  XU<  !D              ("!FJ(  'AL+W=O<FMS:&5E=',O<VAE970R
M-BYX;6Q02P$"% ,4    "  9@']6Y(B*DS #   G!P  &0
M@(&NO@  >&PO=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    ( !F
M?U:?WUPJE@,  +H(   9              " @17"  !X;"]W;W)K<VAE971S
M+W-H965T,C@N>&UL4$L! A0#%     @ &8!_5AZ@%01^ @  =04  !D
M         ("!XL4  'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"% ,4
M    "  9@']6;/:..X,"  !.!0  &0              @(&7R   >&PO=V]R
M:W-H965T<R]S:&5E=#,P+GAM;%!+ 0(4 Q0    ( !F ?U9[9A]E P0  , (
M   9              " @5'+  !X;"]W;W)K<VAE971S+W-H965T,S$N>&UL
M4$L! A0#%     @ &8!_5N2^0WIG @  4@4  !D              ("!B\\
M 'AL+W=O<FMS:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    "  9@']6K&NU
MLGP#  #'"   &0              @($IT@  >&PO=V]R:W-H965T<R]S:&5E
M=#,S+GAM;%!+ 0(4 Q0    ( !F ?U;A('X!A0(  )P%   9
M  " @=S5  !X;"]W;W)K<VAE971S+W-H965T,S0N>&UL4$L! A0#%     @
M&8!_5IT_WJ]>!0  "1$  !D              ("!F-@  'AL+W=O<FMS:&5E
M=',O<VAE970S-2YX;6Q02P$"% ,4    "  9@']63C5E'/H#   +"@  &0
M            @($MW@  >&PO=V]R:W-H965T<R]S:&5E=#,V+GAM;%!+ 0(4
M Q0    ( !F ?U:BM&XI=08  .X/   9              " @5[B  !X;"]W
M;W)K<VAE971S+W-H965T,S<N>&UL4$L! A0#%     @ &8!_5@Y[;#!? P
MQ@<  !D              ("!"ND  'AL+W=O<FMS:&5E=',O<VAE970S."YX
M;6Q02P$"% ,4    "  9@']6&@_EX_H#  !9"0  &0              @(&@
M[   >&PO=V]R:W-H965T<R]S:&5E=#,Y+GAM;%!+ 0(4 Q0    ( !F ?U;I
MYAY5H@(  . %   9              " @='P  !X;"]W;W)K<VAE971S+W-H
M965T-# N>&UL4$L! A0#%     @ &8!_5M90M0L>!0  WPL  !D
M     ("!JO,  'AL+W=O<FMS:&5E=',O<VAE970T,2YX;6Q02P$"% ,4
M"  9@']6PL=(QC<%  "3)@  &0              @('_^   >&PO=V]R:W-H
M965T<R]S:&5E=#0R+GAM;%!+ 0(4 Q0    ( !F ?U95A%2K=@0  !X=   9
M              " @6W^  !X;"]W;W)K<VAE971S+W-H965T-#,N>&UL4$L!
M A0#%     @ &8!_5HK"W/S+!0  /!H  !D              ("!&@,! 'AL
M+W=O<FMS:&5E=',O<VAE970T-"YX;6Q02P$"% ,4    "  9@']60KEWEH4#
M  "."P  &0              @($<"0$ >&PO=V]R:W-H965T<R]S:&5E=#0U
M+GAM;%!+ 0(4 Q0    ( !F ?U;>10WJX (  !@+   9              "
M@=@, 0!X;"]W;W)K<VAE971S+W-H965T-#8N>&UL4$L! A0#%     @ &8!_
M5KB*OAKH 0  ]0,  !D              ("![P\! 'AL+W=O<FMS:&5E=',O
M<VAE970T-RYX;6Q02P$"% ,4    "  9@']6WY^TS7\"  !8!@  &0
M        @($.$@$ >&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;%!+ 0(4 Q0
M   ( !F ?U:X<IR%?P(  $4&   9              " @<04 0!X;"]W;W)K
M<VAE971S+W-H965T-#DN>&UL4$L! A0#%     @ &8!_5C%H#Z^U!@  ="\
M !D              ("!>A<! 'AL+W=O<FMS:&5E=',O<VAE970U,"YX;6Q0
M2P$"% ,4    "  9@']68E"5D.L#  "%%   &0              @(%F'@$
M>&PO=V]R:W-H965T<R]S:&5E=#4Q+GAM;%!+ 0(4 Q0    ( !F ?U;);66V
M=@(  &D&   9              " @8@B 0!X;"]W;W)K<VAE971S+W-H965T
M-3(N>&UL4$L! A0#%     @ &8!_5IZU(S9" P  00L  !D
M ("!-24! 'AL+W=O<FMS:&5E=',O<VAE970U,RYX;6Q02P$"% ,4    "  9
M@']68U4 5WH"   5!@  &0              @(&N* $ >&PO=V]R:W-H965T
M<R]S:&5E=#4T+GAM;%!+ 0(4 Q0    ( !F ?U;($;Q3_0(  $P,   9
M          " @5\K 0!X;"]W;W)K<VAE971S+W-H965T-34N>&UL4$L! A0#
M%     @ &8!_5C2EJ7@5 @  [00  !D              ("!DRX! 'AL+W=O
M<FMS:&5E=',O<VAE970U-BYX;6Q02P$"% ,4    "  9@']6^"4FFN #  !4
M#0  &0              @('?, $ >&PO=V]R:W-H965T<R]S:&5E=#4W+GAM
M;%!+ 0(4 Q0    ( !F ?U:IH0EH- 0  -L1   9              " @?8T
M 0!X;"]W;W)K<VAE971S+W-H965T-3@N>&UL4$L! A0#%     @ &8!_5F !
ME>%@ P  _@L  !D              ("!83D! 'AL+W=O<FMS:&5E=',O<VAE
M970U.2YX;6Q02P$"% ,4    "  9@']6.);%9?4'  " 4@  &0
M    @('X/ $ >&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;%!+ 0(4 Q0    (
M !F ?U:+Z9!+R0D  &US   9              " @21% 0!X;"]W;W)K<VAE
M971S+W-H965T-C$N>&UL4$L! A0#%     @ &8!_5JN-M9<V P  >0D  !D
M             ("!)$\! 'AL+W=O<FMS:&5E=',O<VAE970V,BYX;6Q02P$"
M% ,4    "  9@']6X1IL!Y$%   T+0  &0              @(&14@$ >&PO
M=V]R:W-H965T<R]S:&5E=#8S+GAM;%!+ 0(4 Q0    ( !F ?U8^(W=2W X
M %+<   9              " @5E8 0!X;"]W;W)K<VAE971S+W-H965T-C0N
M>&UL4$L! A0#%     @ &8!_5ILC6B*R P  K@P  !D              ("!
M;&<! 'AL+W=O<FMS:&5E=',O<VAE970V-2YX;6Q02P$"% ,4    "  9@']6
MQV7+P_L#  "7#   &0              @(%5:P$ >&PO=V]R:W-H965T<R]S
M:&5E=#8V+GAM;%!+ 0(4 Q0    ( !F ?U:L"]!(<@0  +<3   9
M      " @8=O 0!X;"]W;W)K<VAE971S+W-H965T-C<N>&UL4$L! A0#%
M  @ &8!_5HT@4I0T P  Y@X  !D              ("!,'0! 'AL+W=O<FMS
M:&5E=',O<VAE970V."YX;6Q02P$"% ,4    "  9@']6&D_K6=X"  !3"0
M&0              @(&;=P$ >&PO=V]R:W-H965T<R]S:&5E=#8Y+GAM;%!+
M 0(4 Q0    ( !F ?U9];>S9]0(  #@(   9              " @;!Z 0!X
M;"]W;W)K<VAE971S+W-H965T-S N>&UL4$L! A0#%     @ &8!_5OO0BV-C
M @  I@4  !D              ("!W'T! 'AL+W=O<FMS:&5E=',O<VAE970W
M,2YX;6Q02P$"% ,4    "  9@']6!XX=?UP"  #0!0  &0
M@(%V@ $ >&PO=V]R:W-H965T<R]S:&5E=#<R+GAM;%!+ 0(4 Q0    ( !F
M?U:(@$S93@4  )X<   9              " @0F# 0!X;"]W;W)K<VAE971S
M+W-H965T-S,N>&UL4$L! A0#%     @ &8!_5A-A0:K3 P  G!$  !D
M         ("!CH@! 'AL+W=O<FMS:&5E=',O<VAE970W-"YX;6Q02P$"% ,4
M    "  9@']6.<@HKDL%   L&0  &0              @(&8C $ >&PO=V]R
M:W-H965T<R]S:&5E=#<U+GAM;%!+ 0(4 Q0    ( !F ?U92@XH1[P(  . *
M   9              " @1J2 0!X;"]W;W)K<VAE971S+W-H965T-S8N>&UL
M4$L! A0#%     @ &8!_5CRCNL#  P  W0T  !D              ("!0)4!
M 'AL+W=O<FMS:&5E=',O<VAE970W-RYX;6Q02P$"% ,4    "  9@']6P29K
M@BD$  "#$@  &0              @($WF0$ >&PO=V]R:W-H965T<R]S:&5E
M=#<X+GAM;%!+ 0(4 Q0    ( !F ?U:(J@81CP4  ,8<   9
M  " @9>= 0!X;"]W;W)K<VAE971S+W-H965T-SDN>&UL4$L! A0#%     @
M&8!_5F7%(<@G P  +PL  !D              ("!7:,! 'AL+W=O<FMS:&5E
M=',O<VAE970X,"YX;6Q02P$"% ,4    "  9@']6R$;=/.0"  !\"@  &0
M            @(&[I@$ >&PO=V]R:W-H965T<R]S:&5E=#@Q+GAM;%!+ 0(4
M Q0    ( !F ?U8(V4HLYP(  .$&   9              " @=:I 0!X;"]W
M;W)K<VAE971S+W-H965T.#(N>&UL4$L! A0#%     @ &8!_5@S=8])@ P
MXA$  !D              ("!]*P! 'AL+W=O<FMS:&5E=',O<VAE970X,RYX
M;6Q02P$"% ,4    "  9@']6#+-HDSD#  #,$P  #0              @ &+
ML $ >&PO<W1Y;&5S+GAM;%!+ 0(4 Q0    ( !F ?U:7BKL<P    !,"   +
M              "  >^S 0!?<F5L<R\N<F5L<U!+ 0(4 Q0    ( !F ?U:_
MAVFACP8  #XV   /              "  =BT 0!X;"]W;W)K8F]O:RYX;6Q0
M2P$"% ,4    "  9@']6-$X[?7H"    ,0  &@              @ &4NP$
M>&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4    "  9@']6(' .
MV20"  "I+P  $P              @ %&O@$ 6T-O;G1E;G1?5'EP97-=+GAM
7;%!+!08     6P!; /08  ";P $    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>100
<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>101
<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>102
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>284</ContextCount>
  <ElementCount>374</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>99</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="form10-k.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-k.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-k.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-k.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-k.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-k.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-k.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-k.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-k.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-k.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-k.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-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>00000012 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PropertyPlantEquipment</Role>
      <ShortName>PROPERTY, PLANT &amp; EQUIPMENT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="form10-k.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-k.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-k.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-k.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-k.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-k.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-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>00000019 - Disclosure - INCOME TAXES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomeTaxes</Role>
      <ShortName>INCOME TAXES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>00000020 - Disclosure - INCOME PER SHARE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/IncomePerShare</Role>
      <ShortName>INCOME PER SHARE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>00000021 - Disclosure - STOCK OPTIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/StockOptions</Role>
      <ShortName>STOCK OPTIONS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>00000022 - Disclosure - CAPITAL STOCK</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/CapitalStock</Role>
      <ShortName>CAPITAL STOCK</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>00000023 - 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>23</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>00000024 - 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>24</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>00000025 - Disclosure - SUBSEQUENT EVENTS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/SubsequentEvents</Role>
      <ShortName>SUBSEQUENT EVENTS</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>00000026 - 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>26</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>00000027 - 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>27</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>00000028 - 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>28</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>00000029 - 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>29</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>00000030 - 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>30</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>00000031 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PropertyPlantEquipmentTables</Role>
      <ShortName>PROPERTY, PLANT &amp; EQUIPMENT (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/PropertyPlantEquipment</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>00000032 - 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>32</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>00000033 - 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>33</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>00000034 - 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>34</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>00000035 - 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>35</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>00000036 - 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>36</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>00000037 - 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>37</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>00000038 - 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>38</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>00000039 - 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>39</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>00000040 - 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>40</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>00000041 - 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>41</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>00000042 - 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>42</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>00000043 - 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>43</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>00000044 - 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>44</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>00000045 - 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>45</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>00000046 - 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>46</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>00000047 - 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>47</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>00000048 - 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>48</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>00000049 - Disclosure - SCHEDULE OF INVENTORY (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfInventoryDetails</Role>
      <ShortName>SCHEDULE OF INVENTORY (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>00000050 - 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>50</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>00000051 - Disclosure - PROPERTY, PLANT &amp; EQUIPMENT (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative</Role>
      <ShortName>PROPERTY, PLANT &amp; EQUIPMENT (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://flexiblesolutions.com/role/PropertyPlantEquipmentTables</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>00000052 - 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>52</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>00000053 - 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>53</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>00000054 - 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>54</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>00000055 - 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>55</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>00000056 - 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>56</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>00000057 - Disclosure - SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails</Role>
      <ShortName>SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>00000058 - 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>58</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>00000059 - 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>59</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>00000060 - 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>60</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>00000061 - 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>61</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>00000062 - 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>62</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>00000063 - 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>63</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>00000064 - 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>64</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>00000065 - 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>65</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>00000066 - 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>66</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>00000067 - 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>67</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>00000068 - 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>68</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>00000069 - 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>69</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>00000070 - 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>70</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>00000071 - 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>71</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>00000072 - 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>72</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>00000073 - 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>73</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>00000074 - 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>74</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>00000075 - 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>75</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>00000076 - 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>76</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>00000077 - 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>77</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>00000078 - 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>78</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>00000079 - 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>79</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>00000080 - 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>80</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>00000081 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails</Role>
      <ShortName>SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>00000082 - 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>82</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>00000083 - 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>83</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[dq-0542-Deprecated-Concept] Concept InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease in us-gaap/2022 used in 2 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. form10-k.htm 8078, 8088</Log>
    <Log type="Warning">[dq-0542-Deprecated-Concept] Concept RevenueFromRelatedParties in us-gaap/2022 used in 2 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. form10-k.htm 8166</Log>
    <Log type="Warning">[dq-0542-Deprecated-Concept] Concept AccountsReceivableRelatedParties in us-gaap/2022 used in 2 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. form10-k.htm 8166, 8167</Log>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 2 fact(s) appearing in ix:hidden were eligible for transformation: dei:EntityIncorporationStateCountryCode -  form10-k.htm 28, 30</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-K" original="form10-k.htm">form10-k.htm</File>
    <File>ex23-1.htm</File>
    <File>ex31-1.htm</File>
    <File>ex31-2.htm</File>
    <File>ex32-1.htm</File>
    <File>fsi-20221231.xsd</File>
    <File>fsi-20221231_cal.xml</File>
    <File>fsi-20221231_def.xml</File>
    <File>fsi-20221231_lab.xml</File>
    <File>fsi-20221231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>audit_001.jpg</File>
    <File>audit_002.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="921">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>105
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "form10-k.htm": {
   "axisCustom": 1,
   "axisStandard": 26,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2022": 921,
    "http://xbrl.sec.gov/dei/2022": 37
   },
   "contextCount": 284,
   "dts": {
    "calculationLink": {
     "local": [
      "fsi-20221231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "fsi-20221231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "form10-k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "fsi-20221231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "fsi-20221231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "fsi-20221231.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/2022/elts/srt-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd",
      "https://xbrl.fasb.org/srt/2022q3/srt-sup-2022q3.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022q3/us-gaap-sup-2022q3.xsd",
      "https://xbrl.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd"
     ]
    }
   },
   "elementCount": 615,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2022": 94,
    "http://flexiblesolutions.com/20221231": 12,
    "http://xbrl.sec.gov/dei/2022": 5,
    "total": 111
   },
   "keyCustom": 56,
   "keyStandard": 318,
   "memberCustom": 57,
   "memberStandard": 32,
   "nsprefix": "FSI",
   "nsuri": "http://flexiblesolutions.com/20221231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://flexiblesolutions.com/role/Cover",
     "shortName": "Cover",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://flexiblesolutions.com/role/AccountsReceivable",
     "shortName": "ACCOUNTS RECEIVABLE",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://flexiblesolutions.com/role/Inventories",
     "shortName": "INVENTORIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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, PLANT & EQUIPMENT",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://flexiblesolutions.com/role/PropertyPlantEquipment",
     "shortName": "PROPERTY, PLANT & EQUIPMENT",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://flexiblesolutions.com/role/Patents",
     "shortName": "PATENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets",
     "shortName": "GOODWILL AND INTANGIBLE ASSETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://flexiblesolutions.com/role/LongTermDeposits",
     "shortName": "LONG TERM DEPOSITS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://flexiblesolutions.com/role/Investments",
     "shortName": "INVESTMENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://flexiblesolutions.com/role/Short-termLineOfCredit",
     "shortName": "SHORT-TERM LINE OF CREDIT",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://flexiblesolutions.com/role/LongTermDebt",
     "shortName": "LONG TERM DEBT",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000019 - Disclosure - INCOME TAXES",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://flexiblesolutions.com/role/IncomeTaxes",
     "shortName": "INCOME TAXES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000002 - Statement - Consolidated Balance Sheets",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://flexiblesolutions.com/role/BalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:DepositsAssetsCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000020 - Disclosure - INCOME PER SHARE",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://flexiblesolutions.com/role/IncomePerShare",
     "shortName": "INCOME PER SHARE",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000021 - Disclosure - STOCK OPTIONS",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://flexiblesolutions.com/role/StockOptions",
     "shortName": "STOCK OPTIONS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000022 - Disclosure - CAPITAL STOCK",
     "menuCat": "Notes",
     "order": "22",
     "role": "http://flexiblesolutions.com/role/CapitalStock",
     "shortName": "CAPITAL STOCK",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000023 - Disclosure - NON-CONTROLLING INTERESTS",
     "menuCat": "Notes",
     "order": "23",
     "role": "http://flexiblesolutions.com/role/Non-controllingInterests",
     "shortName": "NON-CONTROLLING INTERESTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:MinorityInterestDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000024 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY",
     "menuCat": "Notes",
     "order": "24",
     "role": "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency",
     "shortName": "SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000025 - Disclosure - SUBSEQUENT EVENTS",
     "menuCat": "Notes",
     "order": "25",
     "role": "http://flexiblesolutions.com/role/SubsequentEvents",
     "shortName": "SUBSEQUENT EVENTS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000026 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "menuCat": "Policies",
     "order": "26",
     "role": "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies",
     "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000027 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)",
     "menuCat": "Tables",
     "order": "27",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfMethodOfDepreciationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000028 - Disclosure - LEASES (Tables)",
     "menuCat": "Tables",
     "order": "28",
     "role": "http://flexiblesolutions.com/role/LeasesTables",
     "shortName": "LEASES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:FinancingReceivablesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000029 - Disclosure - ACCOUNTS RECEIVABLE (Tables)",
     "menuCat": "Tables",
     "order": "29",
     "role": "http://flexiblesolutions.com/role/AccountsReceivableTables",
     "shortName": "ACCOUNTS RECEIVABLE (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:FinancingReceivablesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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)",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://flexiblesolutions.com/role/BalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000030 - Disclosure - INVENTORIES (Tables)",
     "menuCat": "Tables",
     "order": "30",
     "role": "http://flexiblesolutions.com/role/InventoriesTables",
     "shortName": "INVENTORIES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000031 - Disclosure - PROPERTY, PLANT & EQUIPMENT (Tables)",
     "menuCat": "Tables",
     "order": "31",
     "role": "http://flexiblesolutions.com/role/PropertyPlantEquipmentTables",
     "shortName": "PROPERTY, PLANT & EQUIPMENT (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000032 - Disclosure - PATENTS (Tables)",
     "menuCat": "Tables",
     "order": "32",
     "role": "http://flexiblesolutions.com/role/PatentsTables",
     "shortName": "PATENTS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000033 - Disclosure - GOODWILL AND INTANGIBLE ASSETS (Tables)",
     "menuCat": "Tables",
     "order": "33",
     "role": "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables",
     "shortName": "GOODWILL AND INTANGIBLE ASSETS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "FSI:LongTermDepositsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000034 - Disclosure - LONG TERM DEPOSITS (Tables)",
     "menuCat": "Tables",
     "order": "34",
     "role": "http://flexiblesolutions.com/role/LongTermDepositsTables",
     "shortName": "LONG TERM DEPOSITS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "FSI:LongTermDepositsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfLongTermDepositsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000035 - Disclosure - INVESTMENTS (Tables)",
     "menuCat": "Tables",
     "order": "35",
     "role": "http://flexiblesolutions.com/role/InvestmentsTables",
     "shortName": "INVESTMENTS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-012022-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000036 - Disclosure - LONG TERM DEBT (Tables)",
     "menuCat": "Tables",
     "order": "36",
     "role": "http://flexiblesolutions.com/role/LongTermDebtTables",
     "shortName": "LONG TERM DEBT (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfLoanCovenantsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000037 - Disclosure - INCOME TAXES (Tables)",
     "menuCat": "Tables",
     "order": "37",
     "role": "http://flexiblesolutions.com/role/IncomeTaxesTables",
     "shortName": "INCOME TAXES (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000038 - Disclosure - INCOME PER SHARE (Tables)",
     "menuCat": "Tables",
     "order": "38",
     "role": "http://flexiblesolutions.com/role/IncomePerShareTables",
     "shortName": "INCOME PER SHARE (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000039 - Disclosure - STOCK OPTIONS (Tables)",
     "menuCat": "Tables",
     "order": "39",
     "role": "http://flexiblesolutions.com/role/StockOptionsTables",
     "shortName": "STOCK OPTIONS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome",
     "shortName": "Consolidated Statements of Income and Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:MinorityInterestDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000040 - Disclosure - NON-CONTROLLING INTERESTS (Tables)",
     "menuCat": "Tables",
     "order": "40",
     "role": "http://flexiblesolutions.com/role/Non-controllingInterestsTables",
     "shortName": "NON-CONTROLLING INTERESTS (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:MinorityInterestDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:ScheduleOfDistributionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000041 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Tables)",
     "menuCat": "Tables",
     "order": "41",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000042 - Disclosure - BASIS OF PRESENTATION (Details Narrative)",
     "menuCat": "Details",
     "order": "42",
     "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-k.htm",
      "contextRef": "From2022-01-012022-12-31_custom_EnpInvestmentsLlcAndEnpMendotaMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:SubsidiaryOfLimitedLiabilityCompanyOrLimitedPartnershipOwnershipInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfMethodOfDepreciationTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-012022-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": "00000043 - Disclosure - SCHEDULE OF METHOD OF DEPRECIATION (Details)",
     "menuCat": "Details",
     "order": "43",
     "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-k.htm",
      "contextRef": "From2022-01-012022-12-31_us-gaap_ComputerEquipmentMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "FSI:DepreciationMethodUsedAndAnnualRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "FSI:TermDepositsPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Deposits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000044 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)",
     "menuCat": "Details",
     "order": "44",
     "role": "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative",
     "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "FSI:TermDepositsPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Deposits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000045 - Disclosure - SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY (Details)",
     "menuCat": "Details",
     "order": "45",
     "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-k.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000046 - Disclosure - SCHEDULE OF UNDISCOUNTED RENT PAYMENTS (Details)",
     "menuCat": "Details",
     "order": "46",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000047 - Disclosure - LEASES (Details Narrative)",
     "menuCat": "Details",
     "order": "47",
     "role": "http://flexiblesolutions.com/role/LeasesDetailsNarrative",
     "shortName": "LEASES (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
       "us-gaap:FinancingReceivablesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000048 - Disclosure - SCHEDULE OF ACCOUNTS RECEIVABLE (Details)",
     "menuCat": "Details",
     "order": "48",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000049 - Disclosure - SCHEDULE OF INVENTORY (Details)",
     "menuCat": "Details",
     "order": "49",
     "role": "http://flexiblesolutions.com/role/ScheduleOfInventoryDetails",
     "shortName": "SCHEDULE OF INVENTORY (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoods",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://flexiblesolutions.com/role/StatementsOfCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000050 - Disclosure - SCHEDULE OF PROPERTY, EQUIPMENT AND LEASEHOLDS (Details)",
     "menuCat": "Details",
     "order": "50",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000051 - Disclosure - PROPERTY, PLANT & EQUIPMENT (Details Narrative)",
     "menuCat": "Details",
     "order": "51",
     "role": "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative",
     "shortName": "PROPERTY, PLANT & EQUIPMENT (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000052 - Disclosure - SCHEDULE OF PATENTS (Details)",
     "menuCat": "Details",
     "order": "52",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedPatentsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000053 - Disclosure - SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)",
     "menuCat": "Details",
     "order": "53",
     "role": "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails",
     "shortName": "SCHEDULE OF GOODWILL AND INDEFINITE LIVED INTANGIBLE ASSETS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31_custom_EnPInvestmentsCorporationLLCMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31_us-gaap_FiniteLivedIntangibleAssetsMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000054 - Disclosure - SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)",
     "menuCat": "Details",
     "order": "54",
     "role": "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails",
     "shortName": "SCHEDULE OF ESTIMATED FUTURE AMORTIZATION EXPENSE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31_us-gaap_FiniteLivedIntangibleAssetsMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "FSI:IncreaseInCurrencyConversion",
      "reportCount": 1,
      "unique": true,
      "unitRef": "CAD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000055 - Disclosure - PATENTS (Details Narrative)",
     "menuCat": "Details",
     "order": "55",
     "role": "http://flexiblesolutions.com/role/PatentsDetailsNarrative",
     "shortName": "PATENTS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "FSI:IncreaseInCurrencyConversion",
      "reportCount": 1,
      "unique": true,
      "unitRef": "CAD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepositsAssetsNoncurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000056 - Disclosure - SCHEDULE OF LONG TERM DEPOSITS (Details)",
     "menuCat": "Details",
     "order": "56",
     "role": "http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails",
     "shortName": "SCHEDULE OF LONG TERM DEPOSITS (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000057 - Disclosure - SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details)",
     "menuCat": "Details",
     "order": "57",
     "role": "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails",
     "shortName": "SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:EquityMethodInvestments",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000058 - Disclosure - SCHEDULE OF EQUITY METHOD INVESTMENT (Details)",
     "menuCat": "Details",
     "order": "58",
     "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-k.htm",
      "contextRef": "AsOf2020-12-31_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:EquityMethodInvestments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:GainLossOnInvestmentsTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-012022-06-30_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": "00000059 - Disclosure - SUMMARY OF PROFIT AND LOSS INFORMATION RELATED TO EQUITY ACCOUNTED INVESTMENT (Details)",
     "menuCat": "Details",
     "order": "59",
     "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-k.htm",
      "contextRef": "From2022-01-012022-06-30_custom_EnpPeruInvestmentsLlcMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainsLossesOnSalesOfInvestmentRealEstate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-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",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity",
     "shortName": "Consolidated Statements of Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-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-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000060 - Disclosure - INVESTMENTS (Details Narrative)",
     "menuCat": "Details",
     "order": "60",
     "role": "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
     "shortName": "INVESTMENTS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2021-01-012021-12-31",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:DebtInstrumentMaturityDate",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LinesOfCreditCurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000061 - Disclosure - SHORT-TERM LINE OF CREDIT (Details Narrative)",
     "menuCat": "Details",
     "order": "61",
     "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-k.htm",
      "contextRef": "AsOf2022-06-30_custom_NanoChemSolutionIncMember_custom_StockYardAndBankMember",
      "decimals": "INF",
      "lang": null,
      "name": "FSI:LoanGuaranteedRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfLoanCovenantsTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.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": "00000062 - Disclosure - SCHEDULE OF LOAN COVENANTS (Details)",
     "menuCat": "Details",
     "order": "62",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ProceedsFromBankDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfLoanCovenantsTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000063 - Disclosure - SCHEDULE OF OUTSTANDING BALANCE LOAN (Details)",
     "menuCat": "Details",
     "order": "63",
     "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-k.htm",
      "contextRef": "AsOf2021-12-31_custom_MidlandStatesBankOneMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "FSI:TermDepositsPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentInterestRateStatedPercentage",
      "reportCount": 1,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000064 - Disclosure - LONG TERM DEBT (Details Narrative)",
     "menuCat": "Details",
     "order": "64",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31_custom_TermLoanMember_custom_NanoChemMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000065 - Disclosure - SCHEDULE OF PROVISION FOR INCOME TAX EXPENSE (BENEFIT) (Details)",
     "menuCat": "Details",
     "order": "65",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000066 - Disclosure - SCHEDULE OF RECONCILIATION OF INCOME TAXES (Details)",
     "menuCat": "Details",
     "order": "66",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000067 - Disclosure - SCHEDULE OF DEFERRED TAX ASSETS (LIABILITIES) (Details)",
     "menuCat": "Details",
     "order": "67",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "FSI:ScheduleOfNonOperatingLossCarryforwardsTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000068 - Disclosure - SCHEDULE OF NON OPERATING LOSS CARRYFORWARDS (Details)",
     "menuCat": "Details",
     "order": "68",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31_custom_TwoThousandThirtyTaxYearMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "FSI:CurrentIncomeTaxExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000069 - Disclosure - INCOME TAXES (Details Narrative)",
     "menuCat": "Details",
     "order": "69",
     "role": "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
     "shortName": "INCOME TAXES (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "FSI:CurrentIncomeTaxExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "7",
     "role": "http://flexiblesolutions.com/role/BasisOfPresentation",
     "shortName": "BASIS OF PRESENTATION",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000070 - Disclosure - SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)",
     "menuCat": "Details",
     "order": "70",
     "role": "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
     "shortName": "SCHEDULE OF BASIC AND DILUTED LOSS PER SHARE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000071 - Disclosure - SCHEDULE OF ANTI-DILUTIVE OPTIONS (Details)",
     "menuCat": "Details",
     "order": "71",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "span",
       "span",
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000072 - Disclosure - INCOME PER SHARE (Details Narrative)",
     "menuCat": "Details",
     "order": "72",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31_us-gaap_CanadaRevenueAgencyMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000073 - Disclosure - SCHEDULE OF STOCK OPTION ACTIVITIES (Details)",
     "menuCat": "Details",
     "order": "73",
     "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-k.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000074 - Disclosure - SCHEDULE OF STOCK OPTION FAIR VALUE ASSUMPTIONS (Details)",
     "menuCat": "Details",
     "order": "74",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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": "00000075 - Disclosure - STOCK OPTIONS (Details Narrative)",
     "menuCat": "Details",
     "order": "75",
     "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-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000076 - Disclosure - CAPITAL STOCK (Details Narrative)",
     "menuCat": "Details",
     "order": "76",
     "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-k.htm",
      "contextRef": "From2022-01-012022-12-31_us-gaap_StockOptionMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:MinorityInterest",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000077 - Disclosure - SCHEDULE OF DISTRIBUTIONS (Details)",
     "menuCat": "Details",
     "order": "77",
     "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-k.htm",
      "contextRef": "AsOf2020-12-31_custom_EnpnvestmentsLlcMember_custom_OwnershipInterestPurchaseAgreementMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:MinorityInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PaymentsToMinorityShareholders",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000078 - Disclosure - NON-CONTROLLING INTERESTS (Details Narrative)",
     "menuCat": "Details",
     "order": "78",
     "role": "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
     "shortName": "NON-CONTROLLING INTERESTS (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "span",
       "p",
       "us-gaap:MinorityInterestDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2021-01-012021-12-31_us-gaap_NoncontrollingInterestMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000079 - Disclosure - SCHEDULE OF REPORTABLE SEGMENTS (Details)",
     "menuCat": "Details",
     "order": "79",
     "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-k.htm",
      "contextRef": "From2022-01-012022-12-31_custom_SegmentMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "8",
     "role": "http://flexiblesolutions.com/role/SignificantAccountingPolicies",
     "shortName": "SIGNIFICANT ACCOUNTING POLICIES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000080 - Disclosure - SCHEDULE OF REVENUE GENERATED IN UNITED STATES AND CANADA (Details)",
     "menuCat": "Details",
     "order": "80",
     "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-k.htm",
      "contextRef": "From2022-01-012022-12-31_country_CA",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-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": "00000081 - Disclosure - SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details)",
     "menuCat": "Details",
     "order": "81",
     "role": "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails",
     "shortName": "SCHEDULE OF LONG-LIVED ASSETS ARE LOCATED IN CANADA AND UNITED STATE (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NoncurrentAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000082 - Disclosure - SEGMENTED, SIGNIFICANT CUSTOMER INFORMATION AND ECONOMIC DEPENDENCY (Details Narrative)",
     "menuCat": "Details",
     "order": "82",
     "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-k.htm",
      "contextRef": "AsOf2022-12-31_us-gaap_AccountsReceivableMember_custom_ThreeCustomersMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000083 - Disclosure - SUBSEQUENT EVENTS (Details Narrative)",
     "menuCat": "Details",
     "order": "83",
     "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-k.htm",
      "contextRef": "From2023-01-012023-03-31_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-k.htm",
      "contextRef": "From2022-01-01to2022-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",
     "menuCat": "Notes",
     "order": "9",
     "role": "http://flexiblesolutions.com/role/Leases",
     "shortName": "LEASES",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 99,
   "tag": {
    "FSI_AdditionalEquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional equity method investment ownership percentage.",
        "label": "Additional ownership interest"
       }
      }
     },
     "localname": "AdditionalEquityMethodInvestmentOwnershipPercentage",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_AdditionalPaymentInvestment": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional payment investment"
       }
      }
     },
     "localname": "AdditionalPaymentInvestment",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_BoatMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boat [Member]",
        "label": "Boat [Member]"
       }
      }
     },
     "localname": "BoatMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed less purchase price.",
        "label": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice",
        "periodEndLabel": "Excess of assets acquired over consideration"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLessPurchasePrice",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed long term debt.",
        "label": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt",
        "periodEndLabel": "Long term debt"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLongTermDebt",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_Commissions": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 14.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commissions.",
        "label": "Commissions"
       }
      }
     },
     "localname": "Commissions",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_ConcentrationRiskThresholdPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Concentration Risk Threshold Percentage.",
        "label": "Accounts receivable, after allowance for credit loss, percentage"
       }
      }
     },
     "localname": "ConcentrationRiskThresholdPercentage",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_ConsultantMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Consultant [Member]",
        "label": "Consultant [Member]"
       }
      }
     },
     "localname": "ConsultantMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_ConsultantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Consultants [Member]",
        "label": "Consultants [Member]"
       }
      }
     },
     "localname": "ConsultantsMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_Consulting": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 6.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Consulting.",
        "label": "Consulting"
       }
      }
     },
     "localname": "Consulting",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_CurrentIncomeTaxExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Current income tax expense.",
        "label": "CurrentIncomeTaxExpense",
        "verboseLabel": "Current income tax expense"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpense",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_CurrentIncomeTaxExpenseBenefits": {
     "auth_ref": [],
     "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": {
        "label": "CurrentIncomeTaxExpenseBenefits",
        "negatedLabel": "Current income tax expense",
        "totalLabel": "Current tax, total"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefits",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_CurrentTax": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 1.0,
       "parentTag": "FSI_CurrentIncomeTaxExpenseBenefits",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "Current tax"
       }
      }
     },
     "localname": "CurrentTax",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DeferredTaxAssetsPropertyPlantsAndEquipment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets property plants and equipment.",
        "label": "Property, equipment and leaseholds",
        "negatedLabel": "Property, equipment and leaseholds"
       }
      }
     },
     "localname": "DeferredTaxAssetsPropertyPlantsAndEquipment",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_DeferredTaxAssetsPropertyPlantsAndEquipmentOne": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets property plants and equipment.",
        "label": "DeferredTaxAssetsPropertyPlantsAndEquipmentOne",
        "negatedLabel": "Property, equipment and leaseholds"
       }
      }
     },
     "localname": "DeferredTaxAssetsPropertyPlantsAndEquipmentOne",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "xbrltype": "stringItemType"
    },
    "FSI_ENPMendotaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ENP Mendota, LLC [Member]",
        "label": "ENP Mendota, LLC [Member]"
       }
      }
     },
     "localname": "ENPMendotaMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_ENPPeruInvestmentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ENP Peru Investments [Member]",
        "label": "ENP Peru Investments [Member]"
       }
      }
     },
     "localname": "ENPPeruInvestmentsMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_ENPPeruOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ENP Peru One [Member]",
        "label": "ENP Peru One [Member]"
       }
      }
     },
     "localname": "ENPPeruOneMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EWCPMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "EWCP [Member]",
        "label": "EWCP [Member]"
       }
      }
     },
     "localname": "EWCPMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "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, LLC [Member]"
       }
      }
     },
     "localname": "EnpInvestmentsLlcAndEnpMendotaMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsTables",
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_EnpPeruMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Enp Peru [Member]",
        "label": "Enp Peru [Member]"
       }
      }
     },
     "localname": "EnpPeruMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_GainLossOnSaleOfLand": {
     "auth_ref": [],
     "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": "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_GainOnAcquisition": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain on acquisition.",
        "label": "Gain on previously held equity interest (Note 10)"
       }
      }
     },
     "localname": "GainOnAcquisition",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_GainOnAcquisitionOfSubsidiary": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain on acquisition of subsidiary.",
        "label": "Gain on acquisition of ENP Peru",
        "negatedLabel": "Gain on acquisition of ENP Peru, LLC"
       }
      }
     },
     "localname": "GainOnAcquisitionOfSubsidiary",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_HarrisBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Harris Bank [Member]",
        "label": "Harris Bank [Member]"
       }
      }
     },
     "localname": "HarrisBankMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_IncomeTaxRecovery": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 2.0,
       "parentTag": "FSI_CurrentIncomeTaxExpenseBenefits",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income tax recovery"
       }
      }
     },
     "localname": "IncomeTaxRecovery",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_IncreaseDecreaseInSharePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase decrease in share percentage.",
        "label": "Increase decrease in share percentage"
       }
      }
     },
     "localname": "IncreaseDecreaseInSharePercentage",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_InvestmentEliminatedUponConsolidation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Investment eliminated upon consolidation.",
        "label": "Less investment eliminated upon consolidation",
        "verboseLabel": "Investment eliminated upon consolidation"
       }
      }
     },
     "localname": "InvestmentEliminatedUponConsolidation",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails",
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_InvestmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Investment [Member]",
        "label": "Investment [Member]"
       }
      }
     },
     "localname": "InvestmentMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_InvestorRelationsAndTransferAgentFee": {
     "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": "Investor relations and transfer agent fee.",
        "label": "Investor relations and transfer agent fee"
       }
      }
     },
     "localname": "InvestorRelationsAndTransferAgentFee",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_NanoChemMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Nano Chem [Member]",
        "label": "Nano Chem [Member]"
       }
      }
     },
     "localname": "NanoChemMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "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/20221231",
     "presentation": [
      "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_OtherTermDeposit": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "label": "Other term deposit"
       }
      }
     },
     "localname": "OtherTermDeposit",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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 [Member]",
        "label": "Paycheck Protection Program One [Member]"
       }
      }
     },
     "localname": "PaycheckProtectionProgramOneMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_PppLoanForgiveness": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 3.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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_ProceedsFromLoanAcquiredFromAcquisition": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from loan acquired from acquisition.",
        "label": "Plus: Loan acquired with acquisition of ENP Peru"
       }
      }
     },
     "localname": "ProceedsFromLoanAcquiredFromAcquisition",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_RealizedInvestmentGainsLossesNet": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net income.",
        "label": "RealizedInvestmentGainsLossesNet",
        "verboseLabel": "Net income"
       }
      }
     },
     "localname": "RealizedInvestmentGainsLossesNet",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_RemainingInvestmentOwnedPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remaining investment owned percentage.",
        "label": "Remaining investment owned percentage"
       }
      }
     },
     "localname": "RemainingInvestmentOwnedPercentage",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_RemainningShareOutstanding": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remainning share outstanding.",
        "label": "Remainning share outstanding"
       }
      }
     },
     "localname": "RemainningShareOutstanding",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsTables"
     ],
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_SegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Segment [Member]",
        "label": "Segment [Member]"
       }
      }
     },
     "localname": "SegmentMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_Segmentassets": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Segment assets.",
        "label": "Segment assets"
       }
      }
     },
     "localname": "Segmentassets",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeCancelledOrExpiredOptionsExercisePrice",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "FSI_ShippingCost": {
     "auth_ref": [],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 16.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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "FSI_SoftwareMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Software [Member]",
        "label": "Software [Member]"
       }
      }
     },
     "localname": "SoftwareMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StatementEquityComponentsAxisipAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement Equity Components Axisip [Axis]",
        "verboseLabel": "StatementEquityComponentsAxisipAxis [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxisipAxis",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "FSI_StatementEquityComponentsAxisipDomain": {
     "auth_ref": [],
     "localname": "StatementEquityComponentsAxisipDomain",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StockBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Bank [Member]",
        "label": "Stock Bank [Member]"
       }
      }
     },
     "localname": "StockBankMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_StockOptionExercisePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock option exercise percent",
        "label": "Stock option exercise percent"
       }
      }
     },
     "localname": "StockOptionExercisePercent",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "FSI_StockYardAndBankMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Yard And Bank One [Member]",
        "label": "Stock Yard And Bank One [Member]"
       }
      }
     },
     "localname": "StockYardAndBankMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StockYardsBankTrustFiveMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Yards Bank &amp; Trust Five [Member]",
        "label": "Stock Yards Bank &amp; Trust Five [Member]"
       }
      }
     },
     "localname": "StockYardsBankTrustFiveMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StockYardsBankTrustFourMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Yards Bank &amp; Trust Four [Member]",
        "label": "Stock Yards Bank &amp; Trust Four [Member]"
       }
      }
     },
     "localname": "StockYardsBankTrustFourMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StockYardsBankTrustMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Yards Bank Trust [Member]",
        "label": "Stock Yards Bank &amp; Trust [Member]"
       }
      }
     },
     "localname": "StockYardsBankTrustMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StockYardsBankTrustThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Yards Bank &amp; Trust Three [Member]",
        "label": "Stock Yards Bank &amp; Trust Three [Member]"
       }
      }
     },
     "localname": "StockYardsBankTrustThreeMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_StockYardsBankTrustTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Yards Bank &amp; Trust Two [Member]",
        "label": "Stock Yards Bank &amp; Trust Two [Member]"
       }
      }
     },
     "localname": "StockYardsBankTrustTwoMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary Of Right of use Asset And Lease Liability [Table Text Block]",
        "label": "SUMMARY OF RIGHT-OF-USE ASSET AND LEASE LIABILITY"
       }
      }
     },
     "localname": "SummaryOfRightofuseAssetAndLeaseLiabilityTableTextBlock",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_TPAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "TPA [Member]",
        "label": "TPA [Member]"
       }
      }
     },
     "localname": "TPAMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TermDepositsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term Deposits [Policy Text Block]",
        "label": "Term Deposits"
       }
      }
     },
     "localname": "TermDepositsPolicyTextBlock",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "FSI_TermLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term Loan [Member]",
        "label": "Term Loan [Member]"
       }
      }
     },
     "localname": "TermLoanMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandFourtyYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2040 [Member]",
        "label": "2040 [Member]"
       }
      }
     },
     "localname": "TwoThousandFourtyYearMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtyNineYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2039 [Member]",
        "label": "2039 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtyNineYearMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtyOneYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2031 [Member]",
        "label": "2031 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtyOneYearMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtySevenYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2037 [Member]",
        "label": "2037 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtySevenYearMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "FSI_TwoThousandThirtyTwoYearMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2032 [Member]",
        "label": "2032 [Member]"
       }
      }
     },
     "localname": "TwoThousandThirtyTwoYearMember",
     "nsuri": "http://flexiblesolutions.com/20221231",
     "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/20221231",
     "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/20221231",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "country_CA": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CANADA"
       }
      }
     },
     "localname": "CA",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails",
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AnnualInformationForm": {
     "auth_ref": [
      "r682"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditedAnnualFinancialStatements": {
     "auth_ref": [
      "r682"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r679",
      "r681",
      "r682"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r679",
      "r681",
      "r682"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r679",
      "r681",
      "r682"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAccountingStandard": {
     "auth_ref": [
      "r681"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "accountingStandardItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r679",
      "r681",
      "r682"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r680"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentRegistrationStatement": {
     "auth_ref": [
      "r668"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentShellCompanyEventDate": {
     "auth_ref": [
      "r681"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentShellCompanyReport": {
     "auth_ref": [
      "r681"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r683"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r671"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Documents incorporated by reference.",
        "label": "Documents Incorporated by Reference [Text Block]"
       }
      }
     },
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "auth_ref": [
      "r674"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r670"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "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": [
      "r670"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityExTransitionPeriod": {
     "auth_ref": [
      "r687"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r670"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r684"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPrimarySicNumber": {
     "auth_ref": [
      "r682"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r670"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r670"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r670"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r670"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r685"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r679",
      "r681",
      "r682"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "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/2022",
     "presentation": [
      "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "trueItemType"
    },
    "dei_OtherReportingStandardItemNumber": {
     "auth_ref": [
      "r681"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "otherReportingStandardItemNumberItemType"
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "auth_ref": [
      "r675"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.",
        "label": "Pre-commencement Issuer Tender Offer"
       }
      }
     },
     "localname": "PreCommencementIssuerTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_PreCommencementTenderOffer": {
     "auth_ref": [
      "r676"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.",
        "label": "Pre-commencement Tender Offer"
       }
      }
     },
     "localname": "PreCommencementTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r669"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_Security12gTitle": {
     "auth_ref": [
      "r673"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r672"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_SecurityReportingObligation": {
     "auth_ref": [
      "r677"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "securityReportingObligationItemType"
    },
    "dei_SolicitingMaterial": {
     "auth_ref": [
      "r678"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.",
        "label": "Soliciting Material"
       }
      }
     },
     "localname": "SolicitingMaterial",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "dei_WrittenCommunications": {
     "auth_ref": [
      "r686"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.",
        "label": "Written Communications"
       }
      }
     },
     "localname": "WrittenCommunications",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "auth_ref": [],
     "localname": "EquityMethodInvesteeNameDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r348",
      "r656",
      "r729",
      "r760"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r386",
      "r387",
      "r388",
      "r389",
      "r447",
      "r570",
      "r608",
      "r636",
      "r637",
      "r653",
      "r657",
      "r667",
      "r728",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r386",
      "r387",
      "r388",
      "r389",
      "r447",
      "r570",
      "r608",
      "r636",
      "r637",
      "r653",
      "r657",
      "r667",
      "r728",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r348",
      "r656",
      "r729",
      "r760"
     ],
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r344",
      "r573",
      "r654",
      "r665",
      "r724",
      "r725",
      "r729",
      "r759"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r344",
      "r573",
      "r654",
      "r665",
      "r724",
      "r725",
      "r729",
      "r759"
     ],
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r386",
      "r387",
      "r388",
      "r389",
      "r445",
      "r447",
      "r474",
      "r475",
      "r476",
      "r569",
      "r570",
      "r608",
      "r636",
      "r637",
      "r653",
      "r657",
      "r667",
      "r723",
      "r728",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r386",
      "r387",
      "r388",
      "r389",
      "r445",
      "r447",
      "r474",
      "r475",
      "r476",
      "r569",
      "r570",
      "r608",
      "r636",
      "r637",
      "r653",
      "r657",
      "r667",
      "r723",
      "r728",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755"
     ],
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "auth_ref": [
      "r356"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r345",
      "r346",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r655",
      "r666",
      "r729"
     ],
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r345",
      "r346",
      "r620",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r655",
      "r666",
      "r729"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r717",
      "r746"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative",
      "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsAndNotesReceivableNet": {
     "auth_ref": [
      "r350",
      "r598"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r16",
      "r664"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": {
     "auth_ref": [
      "r720"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/AccountsReceivableTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsReceivableGross": {
     "auth_ref": [
      "r239",
      "r350"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r622"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNet": {
     "auth_ref": [
      "r598",
      "r621"
     ],
     "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",
        "verboseLabel": "Accounts Receivable, after Allowance for Credit Loss"
       }
      }
     },
     "localname": "AccountsReceivableNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r350",
      "r351"
     ],
     "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)",
        "verboseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableRelatedParties": {
     "auth_ref": [
      "r183",
      "r184",
      "r209",
      "r240",
      "r709"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an unclassified balance sheet, amount of receivables arising from transactions with related parties.",
        "label": "Accounts receivable related parties"
       }
      }
     },
     "localname": "AccountsReceivableRelatedParties",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r21"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r107",
      "r231"
     ],
     "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"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r31",
      "r32",
      "r33",
      "r241",
      "r599",
      "r613",
      "r616"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r30",
      "r33",
      "r159",
      "r562",
      "r609",
      "r610",
      "r697",
      "r698",
      "r699",
      "r711",
      "r712",
      "r713"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r8",
      "r664"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r133",
      "r134",
      "r449"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables": {
     "auth_ref": [
      "r718"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfAccountsReceivableDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r60",
      "r94",
      "r100"
     ],
     "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",
        "verboseLabel": "Amortization of intangible assets"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r302"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r186",
      "r203",
      "r234",
      "r270",
      "r328",
      "r334",
      "r340",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r519",
      "r523",
      "r533",
      "r664",
      "r726",
      "r727",
      "r748"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r227",
      "r245",
      "r270",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r519",
      "r523",
      "r533",
      "r664",
      "r726",
      "r727",
      "r748"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BuildingAndBuildingImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing.",
        "label": "Building and Building Improvements [Member]"
       }
      }
     },
     "localname": "BuildingAndBuildingImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r149",
      "r150",
      "r151"
     ],
     "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",
        "verboseLabel": "Purchase consideration"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": {
     "auth_ref": [
      "r146"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets",
        "periodEndLabel": "Total identifiable net assets:"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings": {
     "auth_ref": [
      "r146"
     ],
     "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": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Buildings",
        "periodEndLabel": "Building"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBuildings",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r146"
     ],
     "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": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "periodEndLabel": "Cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r146"
     ],
     "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",
        "negatedPeriodEndLabel": "Deferred tax liability"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand": {
     "auth_ref": [
      "r146"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of real estate acquired, at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Land",
        "periodEndLabel": "Land"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": {
     "auth_ref": [
      "r0",
      "r68",
      "r76"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Cash": {
     "auth_ref": [
      "r618",
      "r619",
      "r664",
      "r690"
     ],
     "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",
        "periodEndLabel": "Cash",
        "verboseLabel": "cash"
       }
      }
     },
     "localname": "Cash",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r65"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r57",
      "r62",
      "r67"
     ],
     "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",
        "periodStartLabel": "Cash resources, beginning"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r57",
      "r178"
     ],
     "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 of cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r236",
      "r237",
      "r238",
      "r270",
      "r296",
      "r297",
      "r299",
      "r301",
      "r309",
      "r310",
      "r357",
      "r390",
      "r393",
      "r394",
      "r395",
      "r399",
      "r400",
      "r419",
      "r420",
      "r422",
      "r426",
      "r432",
      "r533",
      "r638",
      "r689",
      "r705",
      "r714"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": {
     "auth_ref": [
      "r111",
      "r623"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r711",
      "r712",
      "r740"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r7"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r7"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r7"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r7",
      "r113"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r7",
      "r664"
     ],
     "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 16) 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,426,260 (2021: 12,355,246) common shares"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommunicationsAndInformationTechnology": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 13.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationRelatedCostsPolicyTextBlock": {
     "auth_ref": [
      "r127"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r34",
      "r248",
      "r250",
      "r259",
      "r594",
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r155",
      "r156",
      "r163",
      "r248",
      "r250",
      "r258",
      "r593",
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r154",
      "r163",
      "r248",
      "r250",
      "r257",
      "r592",
      "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r71",
      "r72",
      "r175",
      "r176",
      "r348",
      "r622"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r71",
      "r72",
      "r175",
      "r176",
      "r348",
      "r617",
      "r622"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r71",
      "r72",
      "r175",
      "r176",
      "r348",
      "r622",
      "r761"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r199",
      "r313"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Risk Management"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r71",
      "r72",
      "r175",
      "r176",
      "r348",
      "r622"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConsolidationLessThanWhollyOwnedSubsidiaryParentOwnershipInterestEffectsOfChangesNetTable": {
     "auth_ref": [
      "r160",
      "r164"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r41",
      "r573"
     ],
     "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 sales"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CreditFacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Axis]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r708",
      "r736",
      "r738"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 1.0,
       "parentTag": "FSI_CurrentTax",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current tax, federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "auth_ref": [
      "r708",
      "r736"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 3.0,
       "parentTag": "FSI_CurrentTax",
       "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r143",
      "r500",
      "r511",
      "r708"
     ],
     "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"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r708",
      "r736",
      "r738"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails": {
       "order": 2.0,
       "parentTag": "FSI_CurrentTax",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current tax, state"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r147"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDefaultLongtermDebtAmount": {
     "auth_ref": [
      "r268"
     ],
     "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 Long term debt amount"
       }
      }
     },
     "localname": "DebtDefaultLongtermDebtAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r3",
      "r4",
      "r5",
      "r187",
      "r188",
      "r201",
      "r273",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r550",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r706"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r180",
      "r182",
      "r401",
      "r550",
      "r649",
      "r650"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt face amount",
        "verboseLabel": "Debt instrument face amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r23",
      "r402"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt interest rate",
        "terseLabel": "Debt instrument interest rate stated percentage",
        "verboseLabel": "Interest rate"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative",
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "auth_ref": [
      "r246",
      "r648",
      "r741"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.",
        "label": "Debt maturity date"
       }
      }
     },
     "localname": "DebtInstrumentMaturityDate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r24",
      "r273",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r550",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r706"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "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"
       }
      }
     },
     "localname": "DebtInstrumentTerm",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r708",
      "r737",
      "r738"
     ],
     "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 tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred income tax, federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r143",
      "r708",
      "r737"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r489",
      "r490"
     ],
     "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 13)"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r60",
      "r143",
      "r501",
      "r510",
      "r511",
      "r708"
     ],
     "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 recovery (expense)",
        "totalLabel": "Deferred income tax, total",
        "verboseLabel": "Deferred tax expense (recovery)"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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": [
      "r489",
      "r490"
     ],
     "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 13)"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCreditsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes (Note 13)"
       }
      }
     },
     "localname": "DeferredIncomeTaxesAndTaxCreditsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredRevenueCurrent": {
     "auth_ref": [
      "r693"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r708",
      "r737",
      "r738"
     ],
     "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) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred income tax, state"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsDerivativeInstruments": {
     "auth_ref": [
      "r141",
      "r735"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r496"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred tax assets gross"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "auth_ref": [
      "r734"
     ],
     "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": "Deferred Tax Assets, Net",
        "negatedLabel": "Net deferred tax asset (liability)"
       }
      }
     },
     "localname": "DeferredTaxAssetsLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r734"
     ],
     "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": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r141",
      "r735"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_Deposits": {
     "auth_ref": [
      "r193"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate of all deposit liabilities held by the entity, including foreign and domestic, interest and noninterest bearing; may include demand deposits, saving deposits, Negotiable Order of Withdrawal (NOW) and time deposits among others.",
        "label": "Deposit"
       }
      }
     },
     "localname": "Deposits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepositsAssetsCurrent": {
     "auth_ref": [
      "r696"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepositsAssetsNoncurrent": {
     "auth_ref": [
      "r692"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfLongTermDepositsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r60",
      "r105"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r60",
      "r105"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationNonproduction": {
     "auth_ref": [
      "r60",
      "r105"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r166",
      "r167",
      "r168",
      "r169",
      "r641"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of derivative contract.",
        "label": "Derivative Instrument [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentRiskAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "auth_ref": [
      "r148"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r451",
      "r478",
      "r479",
      "r481",
      "r485",
      "r658"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "STOCK OPTIONS"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r260",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r294",
      "r296",
      "r299",
      "r300",
      "r301",
      "r305",
      "r528",
      "r529",
      "r595",
      "r603",
      "r644"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Income per share (basic) (Note 14)",
        "verboseLabel": "Basic"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r260",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r296",
      "r299",
      "r300",
      "r301",
      "r305",
      "r528",
      "r529",
      "r595",
      "r603",
      "r644"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (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 (diluted) (Note 14)",
        "verboseLabel": "Diluted"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r69",
      "r70"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r302",
      "r303",
      "r304",
      "r306"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "INCOME PER SHARE"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r743"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r271",
      "r492",
      "r512"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r480"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Stock vested compensation non vested"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r480"
     ],
     "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": "Weighted average period expected to be recognized"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r113",
      "r222",
      "r252",
      "r253",
      "r254",
      "r274",
      "r275",
      "r276",
      "r280",
      "r288",
      "r290",
      "r308",
      "r359",
      "r433",
      "r482",
      "r483",
      "r484",
      "r503",
      "r504",
      "r527",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r562",
      "r609",
      "r610",
      "r611"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "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"
       }
      }
     },
     "localname": "EquityMethodInvestmentDescriptionOfPrincipalActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [
      "r88"
     ],
     "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 percentage"
       }
      }
     },
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal": {
     "auth_ref": [
      "r701",
      "r702",
      "r704"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of an equity method investment.",
        "label": "Gain (loss) in equity method investment"
       }
      }
     },
     "localname": "EquityMethodInvestmentRealizedGainLossOnDisposal",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEquityMethodInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestments": {
     "auth_ref": [
      "r87",
      "r329",
      "r691"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityMethodInvestmentsDisclosureTextBlock": {
     "auth_ref": [
      "r358"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Investments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EquityMethodInvestmentsPolicy": {
     "auth_ref": [
      "r56",
      "r89",
      "r177"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EquityMethodInvestmentsTextBlock": {
     "auth_ref": [
      "r91"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": {
     "auth_ref": [
      "r171"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class of asset."
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueByAssetClassAxis": {
     "auth_ref": [
      "r170",
      "r172"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by class of asset.",
        "label": "Asset Class [Axis]"
       }
      }
     },
     "localname": "FairValueByAssetClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r173",
      "r174"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "auth_ref": [
      "r555",
      "r557",
      "r663"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinancingReceivablesTextBlock": {
     "auth_ref": [
      "r352",
      "r355"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for financing receivable.",
        "label": "ACCOUNTS RECEIVABLE"
       }
      }
     },
     "localname": "FinancingReceivablesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/AccountsReceivable"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r233",
      "r380"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPatentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r101"
     ],
     "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": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r101"
     ],
     "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": "2027"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r101"
     ],
     "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": "2026"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r101"
     ],
     "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": "2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r101"
     ],
     "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": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r378",
      "r379",
      "r380",
      "r381",
      "r574",
      "r578"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r95",
      "r98"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r99",
      "r574"
     ],
     "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"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPatentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedPatentsGross": {
     "auth_ref": [
      "r99"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPatentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "auth_ref": [
      "r537",
      "r538",
      "r539",
      "r540"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 17.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r548"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "auth_ref": [
      "r704"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.",
        "label": "Recognized gains"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnInvestments": {
     "auth_ref": [
      "r45",
      "r86",
      "r688"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 4.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)",
        "negatedLabel": "Gain on investments"
       }
      }
     },
     "localname": "GainLossOnInvestments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows",
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GainsLossesOnSalesOfInvestmentRealEstate": {
     "auth_ref": [
      "r605",
      "r606",
      "r607",
      "r701",
      "r702",
      "r704",
      "r757",
      "r758"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfProfitAndLossInformationRelatedToEquityAccountedInvestmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralInsuranceExpense": {
     "auth_ref": [
      "r43"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r232",
      "r368",
      "r591",
      "r647",
      "r664",
      "r721",
      "r722"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r103"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r92",
      "r96"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r40",
      "r270",
      "r328",
      "r333",
      "r339",
      "r342",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r533",
      "r646",
      "r726"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfEstimatedFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r104",
      "r109"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r36",
      "r185",
      "r195",
      "r213",
      "r328",
      "r333",
      "r339",
      "r342",
      "r596",
      "r646"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityNameAxis": {
     "auth_ref": [
      "r137"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative",
      "http://flexiblesolutions.com/role/IncomeTaxesDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfDeferredTaxAssetsLiabilitiesDetails",
      "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r271",
      "r493",
      "r494",
      "r499",
      "r508",
      "r513",
      "r515",
      "r516",
      "r517"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r272",
      "r289",
      "r290",
      "r326",
      "r491",
      "r509",
      "r514",
      "r604"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfProvisionForIncomeTaxExpenseBenefitDetails",
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r251",
      "r487",
      "r488",
      "r494",
      "r495",
      "r498",
      "r502"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r733"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInEnactedTaxRate": {
     "auth_ref": [
      "r486",
      "r492"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": {
     "auth_ref": [
      "r733"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpense": {
     "auth_ref": [
      "r733"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r733"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReconciliationOfIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r66"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r59"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r59"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "auth_ref": [
      "r59"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "auth_ref": [
      "r571",
      "r703"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r59"
     ],
     "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 in inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "auth_ref": [
      "r59"
     ],
     "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": "Decrease (increase) in prepaid expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r102"
     ],
     "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 assets, ending balance",
        "periodEndLabel": "Indefinite lived intangible assets, ending balance",
        "periodStartLabel": "Indefinite lived intangible assets, beginning balance"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfGoodwillAndIndefiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r382"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Patents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r93",
      "r97"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r181",
      "r197",
      "r255",
      "r322",
      "r549"
     ],
     "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 the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpenseDebt": {
     "auth_ref": [
      "r46",
      "r414",
      "r418",
      "r651",
      "r652"
     ],
     "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"
       }
      }
     },
     "localname": "InterestExpenseDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestIncomeOther": {
     "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": "Amount of interest income earned from interest bearing assets classified as other.",
        "label": "Interest income"
       }
      }
     },
     "localname": "InterestIncomeOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r262",
      "r265",
      "r266"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPayableCurrentAndNoncurrent": {
     "auth_ref": [
      "r194",
      "r211"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest payable on debt, including, but not limited to, trade payables.",
        "label": "Accured interest"
       }
      }
     },
     "localname": "InterestPayableCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r365"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r694"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfInventoryDetails": {
       "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r243",
      "r639",
      "r664"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://flexiblesolutions.com/role/ScheduleOfInventoryDetails": {
       "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfInventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r229",
      "r242",
      "r307",
      "r363",
      "r364",
      "r365",
      "r572",
      "r642"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterialsAndSupplies": {
     "auth_ref": [
      "r695"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/ScheduleOfInventoryDetails": {
       "order": 2.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfInventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentCompanyNetAssetsFromOperationsIncreaseDecrease": {
     "auth_ref": [
      "r216",
      "r218"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r730"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r106"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LesseeOperatingLeaseDiscountRate": {
     "auth_ref": [
      "r662"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LeasesDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r745"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r559"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r559"
     ],
     "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": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r559"
     ],
     "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": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r559"
     ],
     "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": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r559"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r560"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r20",
      "r270",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r520",
      "r523",
      "r524",
      "r533",
      "r645",
      "r726",
      "r748",
      "r749"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r12",
      "r190",
      "r208",
      "r664",
      "r707",
      "r719",
      "r742"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r22",
      "r228",
      "r270",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r520",
      "r523",
      "r524",
      "r533",
      "r664",
      "r726",
      "r748",
      "r749"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "auth_ref": [
      "r17",
      "r706"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd": {
     "auth_ref": [
      "r17"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod": {
     "auth_ref": [
      "r17"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "auth_ref": [
      "r17",
      "r706"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r17"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "auth_ref": [
      "r17",
      "r706"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LinesOfCreditCurrent": {
     "auth_ref": [
      "r3",
      "r187"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LoansPayable": {
     "auth_ref": [
      "r5",
      "r188",
      "r200"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Including the current and noncurrent portions, aggregate carrying value as of the balance sheet date of loans payable (with maturities initially due after one year or beyond the operating cycle if longer).",
        "label": "First mortgage"
       }
      }
     },
     "localname": "LoansPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r5",
      "r188",
      "r205",
      "r408",
      "r417",
      "r649",
      "r650"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.",
        "label": "Long-Term Debt",
        "periodEndLabel": "Balance, end of period",
        "periodStartLabel": "Balance, beginning of period",
        "verboseLabel": "Total"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r19"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r235"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.",
        "label": "Long term debt (Note 12)",
        "verboseLabel": "Long term debt"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtTextBlock": {
     "auth_ref": [
      "r112"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-term debt.",
        "label": "LONG TERM DEBT"
       }
      }
     },
     "localname": "LongTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MinorityInterest": {
     "auth_ref": [
      "r26",
      "r189",
      "r207",
      "r270",
      "r357",
      "r390",
      "r393",
      "r394",
      "r395",
      "r399",
      "r400",
      "r533"
     ],
     "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 17)",
        "periodEndLabel": "Distribution to noncontrolling interests, Ending balance",
        "periodStartLabel": "Distribution to noncontrolling interests, Beginning balance"
       }
      }
     },
     "localname": "MinorityInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders": {
     "auth_ref": [
      "r118"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestDisclosureTextBlock": {
     "auth_ref": [
      "r165"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterests"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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": "Minority interest ownership percentage by parent",
        "terseLabel": "Related party owner ship percentage",
        "verboseLabel": "Minority Interest Ownership Percentage"
       }
      }
     },
     "localname": "MinorityInterestOwnershipPercentageByParent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r264"
     ],
     "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 provided by (used in) financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r264"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r57",
      "r58",
      "r61"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r37",
      "r61",
      "r196",
      "r212",
      "r226",
      "r247",
      "r249",
      "r254",
      "r270",
      "r279",
      "r283",
      "r284",
      "r285",
      "r286",
      "r289",
      "r290",
      "r298",
      "r328",
      "r333",
      "r339",
      "r342",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r529",
      "r533",
      "r646",
      "r726"
     ],
     "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",
        "totalLabel": "Net income attributable to controlling interest",
        "verboseLabel": "Segment profit"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r157",
      "r162",
      "r247",
      "r249",
      "r289",
      "r290",
      "r699"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r224",
      "r277",
      "r278",
      "r281",
      "r282",
      "r291",
      "r292",
      "r293",
      "r353",
      "r354",
      "r360",
      "r361",
      "r505",
      "r506",
      "r507",
      "r526",
      "r530",
      "r531",
      "r532",
      "r534",
      "r535",
      "r536",
      "r551",
      "r552",
      "r561",
      "r563",
      "r575",
      "r576",
      "r577",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_NoncontrollingInterestMember": {
     "auth_ref": [
      "r152",
      "r433",
      "r711",
      "r712",
      "r713"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NoncurrentAssets": {
     "auth_ref": [
      "r346"
     ],
     "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",
        "verboseLabel": "Total"
       }
      }
     },
     "localname": "NoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OfficersCompensation": {
     "auth_ref": [
      "r700"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OffsettingAssetsTable": {
     "auth_ref": [
      "r27",
      "r28"
     ],
     "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/2022",
     "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",
        "totalLabel": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r328",
      "r333",
      "r339",
      "r342",
      "r646"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r744"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 11.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r554"
     ],
     "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, beginning balance",
        "verboseLabel": "Lease liability, December 31, 2022"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfUndiscountedRentPaymentsDetails",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r554"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r554"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r556",
      "r558"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r553"
     ],
     "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, beginning balance"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": {
     "auth_ref": [
      "r704"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SummaryOfRight-of-useAssetAndLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r139"
     ],
     "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/2022",
     "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/2022",
     "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": [
      "r140"
     ],
     "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/2022",
     "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": [
      "r154",
      "r155",
      "r158"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r29"
     ],
     "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 (loss) on foreign currency transactions"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherGeneralExpense": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 5.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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PatentsMember": {
     "auth_ref": [
      "r148"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PaymentsForProceedsFromDepositOnLoan": {
     "auth_ref": [
      "r63",
      "r64"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfFinancingCosts": {
     "auth_ref": [
      "r55"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r49"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 3.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 Peru, LLC"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireInvestments": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 1.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r50"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 5.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToMinorityShareholders": {
     "auth_ref": [
      "r55"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 5.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r6",
      "r419"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r6"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r6",
      "r419"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r6"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PremiumsReceivableAllowanceForDoubtfulAccountsEstimationMethodologyPolicy": {
     "auth_ref": [
      "r84",
      "r215"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "auth_ref": [
      "r244",
      "r366",
      "r367",
      "r640"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProceedsFromBankDebt": {
     "auth_ref": [
      "r53"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from bank borrowing during the year.",
        "label": "Plus: Proceeds from loans"
       }
      }
     },
     "localname": "ProceedsFromBankDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 6.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r53"
     ],
     "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/2022",
     "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 of short term line of credit"
       }
      }
     },
     "localname": "ProceedsFromRepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfEquityMethodInvestments": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 2.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfMachineryAndEquipment": {
     "auth_ref": [
      "r48"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfOtherPropertyPlantAndEquipment": {
     "auth_ref": [
      "r48"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 4.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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ProfessionalFees": {
     "auth_ref": [
      "r217",
      "r220"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 4.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r226",
      "r247",
      "r249",
      "r263",
      "r270",
      "r279",
      "r289",
      "r290",
      "r328",
      "r333",
      "r339",
      "r342",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r518",
      "r521",
      "r522",
      "r529",
      "r533",
      "r596",
      "r646",
      "r660",
      "r661",
      "r699",
      "r726"
     ],
     "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",
        "totalLabel": "Net income for the year",
        "verboseLabel": "Net income for the year"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r108"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r110",
      "r624",
      "r625",
      "r626"
     ],
     "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, PLANT &amp; EQUIPMENT"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r106",
      "r230"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative",
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r108",
      "r210",
      "r597",
      "r664"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r108",
      "r624",
      "r625"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r108"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r106"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r261",
      "r362"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RealizedInvestmentGainsLosses": {
     "auth_ref": [
      "r214"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r77",
      "r78"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RelatedPartyDomain": {
     "auth_ref": [
      "r446",
      "r564",
      "r565"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "auth_ref": [
      "r446",
      "r564",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r588",
      "r589",
      "r590",
      "r747"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RepaymentsOfBankDebt": {
     "auth_ref": [
      "r54"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLoanCovenantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r54"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r135",
      "r221",
      "r756"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 12.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r9",
      "r118",
      "r206",
      "r612",
      "r616",
      "r664"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r222",
      "r274",
      "r275",
      "r276",
      "r280",
      "r288",
      "r290",
      "r359",
      "r482",
      "r483",
      "r484",
      "r503",
      "r504",
      "r527",
      "r609",
      "r611"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r319",
      "r320",
      "r332",
      "r337",
      "r338",
      "r344",
      "r345",
      "r348",
      "r442",
      "r443",
      "r573"
     ],
     "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": "Total"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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_RevenueFromContractWithCustomerMember": {
     "auth_ref": [
      "r348",
      "r716"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r444",
      "r643"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromRelatedParties": {
     "auth_ref": [
      "r38",
      "r219",
      "r392",
      "r393",
      "r394",
      "r398",
      "r399",
      "r400"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates.",
        "label": "Revenue from Related Parties",
        "verboseLabel": "Sales"
       }
      }
     },
     "localname": "RevenueFromRelatedParties",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r256",
      "r270",
      "r319",
      "r320",
      "r332",
      "r337",
      "r338",
      "r344",
      "r345",
      "r348",
      "r357",
      "r390",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r399",
      "r400",
      "r533",
      "r596",
      "r726"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).",
        "label": "Revenues",
        "verboseLabel": "Sales"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.",
        "label": "Revolving Credit Facility [Member]"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SalariesAndWages": {
     "auth_ref": [
      "r700"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "auth_ref": [
      "r69"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": {
     "auth_ref": [
      "r144",
      "r145"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.",
        "label": "SCHEDULE OF FAIR VALUES OF THE ASSETS ACQUIRED AND LIABILITIES ASSUMED"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r142"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "auth_ref": [
      "r24",
      "r114",
      "r115",
      "r116",
      "r117",
      "r179",
      "r180",
      "r182",
      "r198",
      "r649",
      "r651",
      "r710"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable": {
     "auth_ref": [
      "r120",
      "r121"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r138"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r122",
      "r123",
      "r124",
      "r125",
      "r126"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfOutstandingBalanceLoanDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r715"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomePerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r136"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock": {
     "auth_ref": [
      "r81"
     ],
     "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 STATE"
       }
      }
     },
     "localname": "ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable": {
     "auth_ref": [
      "r79"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable": {
     "auth_ref": [
      "r83"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEquityMethodInvestmentsLineItems": {
     "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": "Schedule of Equity Method Investments [Line Items]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEquityMethodInvestmentsTable": {
     "auth_ref": [
      "r90",
      "r226",
      "r270",
      "r357",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summarization of information required and determined to be disclosed concerning equity method investments in common stock. The summarized information includes: (a) the name of each investee or group of investees for which combined disclosure is appropriate, (2) the percentage ownership of common stock, (3) the difference, if any, between the carrying amount of an investment and the value of the underlying equity in the net assets and the accounting treatment of difference, if any, and (4) the aggregate value of each identified investment based on its quoted market price, if available.",
        "label": "Schedule of Equity Method Investments [Table]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r95",
      "r98",
      "r574"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r95",
      "r98"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/PatentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock": {
     "auth_ref": [
      "r92"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r1",
      "r13",
      "r14",
      "r15"
     ],
     "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 INVENTORY"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InventoriesTables"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r108"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BasisOfPresentationDetailsNarrative",
      "http://flexiblesolutions.com/role/PropertyPlantEquipmentDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails",
      "http://flexiblesolutions.com/role/ScheduleOfPropertyEquipmentAndLeaseholdsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock": {
     "auth_ref": [
      "r39",
      "r80"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependencyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": {
     "auth_ref": [
      "r35",
      "r82"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfLong-livedAssetsAreLocatedInCanadaAndUnitedStateDetails",
      "http://flexiblesolutions.com/role/ScheduleOfRevenueGeneratedInUnitedStatesAndCanadaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r448",
      "r450",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r128",
      "r129",
      "r130"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r132"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShortTermDebtTable": {
     "auth_ref": [
      "r18"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r98"
     ],
     "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 FUTURE AMORTIZATION EXPENSE"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r316",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r348",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r384",
      "r385",
      "r647",
      "r759"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r316",
      "r317",
      "r318",
      "r328",
      "r331",
      "r336",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r347",
      "r348",
      "r349"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SegmentedSignificantCustomerInformationAndEconomicDependency"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "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": "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r59"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r474"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r476"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r457"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r457"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted average exercise price, Ending Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "auth_ref": [
      "r732"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r732"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [
      "r459"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative",
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r469"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r455",
      "r456"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r455",
      "r456"
     ],
     "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, Ending Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue": {
     "auth_ref": [
      "r472"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r460"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r459"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "auth_ref": [
      "r731"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r659"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r473"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionFairValueAssumptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r131"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "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": "Balance, shares",
        "periodStartLabel": "Balance, shares"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShippingAndHandlingMember": {
     "auth_ref": [
      "r730"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Packing and transport of product.",
        "label": "Shipping and Handling [Member]"
       }
      }
     },
     "localname": "ShippingAndHandlingMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShortTermBorrowings": {
     "auth_ref": [
      "r2",
      "r187",
      "r204",
      "r664"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShortTermDebtTextBlock": {
     "auth_ref": [
      "r112"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Short-termLineOfCredit"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShortTermInvestments": {
     "auth_ref": [
      "r191",
      "r192",
      "r202",
      "r696"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r68",
      "r267"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r225",
      "r316",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r348",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r383",
      "r384",
      "r385",
      "r647",
      "r759"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfReportableSegmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r236",
      "r237",
      "r238",
      "r270",
      "r296",
      "r297",
      "r299",
      "r301",
      "r309",
      "r310",
      "r357",
      "r390",
      "r393",
      "r394",
      "r395",
      "r399",
      "r400",
      "r419",
      "r420",
      "r422",
      "r426",
      "r432",
      "r533",
      "r638",
      "r689",
      "r705",
      "r714"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r25",
      "r113",
      "r222",
      "r252",
      "r253",
      "r254",
      "r274",
      "r275",
      "r276",
      "r280",
      "r288",
      "r290",
      "r308",
      "r359",
      "r433",
      "r482",
      "r483",
      "r484",
      "r503",
      "r504",
      "r527",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r562",
      "r609",
      "r610",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/Non-controllingInterestsDetailsNarrative",
      "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/2022",
     "presentation": [
      "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r274",
      "r275",
      "r276",
      "r308",
      "r573"
     ],
     "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/2022",
     "presentation": [
      "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": [
      "r6",
      "r7",
      "r113",
      "r118"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Common stock issued, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/InvestmentsDetailsNarrative",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r6",
      "r7",
      "r113",
      "r118",
      "r460"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative",
      "http://flexiblesolutions.com/role/ScheduleOfStockOptionActivitiesDetails",
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r6",
      "r7",
      "r113",
      "r118"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contracts conveying rights, but not obligations, to buy or sell a specific quantity of stock at a specified price during a specified period (an American option) or at a specified date (a European option).",
        "label": "Equity Option [Member]"
       }
      }
     },
     "localname": "StockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/CapitalStockDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StockOptionPlanExpense": {
     "auth_ref": [
      "r60"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StockOptionsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r7",
      "r10",
      "r11",
      "r85",
      "r664",
      "r707",
      "r719",
      "r742"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r152",
      "r153",
      "r161",
      "r222",
      "r223",
      "r253",
      "r274",
      "r275",
      "r276",
      "r280",
      "r288",
      "r359",
      "r433",
      "r482",
      "r483",
      "r484",
      "r503",
      "r504",
      "r527",
      "r541",
      "r542",
      "r546",
      "r562",
      "r610",
      "r611",
      "r707",
      "r719",
      "r742"
     ],
     "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": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total Stockholders\u2019 Equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets",
      "http://flexiblesolutions.com/role/StatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders\u2019 Equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r119",
      "r269",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r433",
      "r525"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r547",
      "r567"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTable": {
     "auth_ref": [
      "r547",
      "r567"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r547",
      "r567"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SubsequentEventsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r547",
      "r567"
     ],
     "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/2022",
     "presentation": [
      "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r566",
      "r568"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfNonOperatingLossCarryforwardsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TaxesPayableCurrent": {
     "auth_ref": [
      "r19"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfMethodOfDepreciationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TravelAndEntertainmentExpense": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 10.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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TypeOfArrangementAxis": {
     "auth_ref": [
      "r739"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfDistributionsDetails",
      "http://flexiblesolutions.com/role/Short-termLineOfCreditDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r73",
      "r74",
      "r75",
      "r311",
      "r312",
      "r314",
      "r315"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_UtilitiesOperatingExpense": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome": {
       "order": 15.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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/LongTermDebtDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r295",
      "r301"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r294",
      "r301"
     ],
     "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/2022",
     "presentation": [
      "http://flexiblesolutions.com/role/ScheduleOfBasicAndDilutedLossPerShareDetails",
      "http://flexiblesolutions.com/role/StatementsOfIncomeAndComprehensiveIncome"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 7
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "https://asc.fasb.org/topic&trid=2122149",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "https://asc.fasb.org/topic&trid=2144416",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "https://asc.fasb.org/topic&trid=2155823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "https://asc.fasb.org/topic&trid=2208564",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21506-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21521-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21538-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "https://asc.fasb.org/topic&trid=2208762",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "710",
   "URI": "https://asc.fasb.org/extlink&oid=6409733&loc=d3e19524-108361",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "10",
   "Topic": "710",
   "URI": "https://asc.fasb.org/extlink&oid=6409875&loc=d3e20015-108363",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2439-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f(1))",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "https://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6578-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6613-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568447-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568740-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569643-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4613674-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4M",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591554-111686",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "810",
   "URI": "https://asc.fasb.org/topic&trid=2197479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(4))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(5))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.12)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126941378&loc=d3e61044-112788",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16)(a)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(1)(g))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(1))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(24))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.15(a))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04.3(a))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=6933075&loc=SL5748726-161290",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=118262037&loc=d3e9915-115836",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(k)",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=124433917&loc=SL114874205-224268",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=124433917&loc=SL114874234-224268",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07.1(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=120401555&loc=SL114874292-224272",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "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": "https://asc.fasb.org/extlink&oid=120401555&loc=SL114874292-224272",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(15))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(16))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(7))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(22))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(23))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3000-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18726-107790",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=51824906&loc=SL20225877-175312",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "https://asc.fasb.org/topic&trid=2122394",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1278-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org/topic&trid=2144383",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e543-108305",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8657-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8844-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8981-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "https://asc.fasb.org/topic&trid=2134510",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/subtopic&trid=2196772",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(2)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/subtopic&trid=2196816",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "323",
   "URI": "https://asc.fasb.org/topic&trid=2196965",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "https://asc.fasb.org/extlink&oid=126905020&loc=d3e5879-108316",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "https://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1(e))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/subtopic&trid=2144471",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6036836-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(b))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496180-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130561-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130564-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.6)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7(c),9(a))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(l)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32059-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=SL126733271-114008",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=126980362&loc=d3e28228-110885",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123602790&loc=d3e30226-110892",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=125521441&loc=d3e30690-110894",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=124440516&loc=d3e30840-110895",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "https://asc.fasb.org/topic&trid=2175825",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=SL94080555-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/subtopic&trid=77888251",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "https://asc.fasb.org/topic&trid=2122774",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=126938201&loc=d3e55415-109406",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(1)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(2)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(3)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61929-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61929-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62059-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62059-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62395-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62395-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62479-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62479-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=SL6807758-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=SL6807758-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(1)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61872-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(2)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61872-109447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(24))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(25))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r597": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r598": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(5))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r599": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r600": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(20))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r601": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(21))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r602": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "360",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123605564&loc=d3e23415-158514",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r606": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "360",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123605564&loc=d3e23439-158514",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r607": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123605587&loc=d3e23528-158515",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r608": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r609": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r610": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r611": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r612": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r613": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r614": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r615": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r616": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=118262064&loc=SL116631418-115840",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=118262064&loc=SL116631419-115840",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r621": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942793&loc=d3e3073-115593",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "450",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491354&loc=d3e6049-115624",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99779-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99893-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=SL120174063-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r628": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r629": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3095-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r638": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1402",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3098-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4273-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r654": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r655": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r656": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r657": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r658": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r659": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r663": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r664": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r665": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r667": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r668": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r669": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r670": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r671": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r672": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r673": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "g",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r674": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12, 13, 15d",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r675": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13e",
   "Subsection": "4c",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r676": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14d",
   "Subsection": "2b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r677": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "15",
   "Subsection": "d",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r678": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14a",
   "Subsection": "12",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r679": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org/topic&trid=2122369",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r680": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r681": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r682": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r683": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r684": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r685": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r686": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "425",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r687": {
   "Name": "Securities Act",
   "Number": "7A",
   "Publisher": "SEC",
   "Section": "B",
   "Subsection": "2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r690": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r691": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(10))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r692": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r693": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r694": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r695": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r696": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r697": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r698": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r699": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r700": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(4))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r701": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(b)(7)(c))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r702": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(b)(9)(a))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r703": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r704": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r705": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r706": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r707": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r708": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r709": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r710": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r711": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r712": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r713": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r714": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e2626-109256",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r715": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r716": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r717": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r718": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r719": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r720": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r721": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r722": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r723": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r724": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r725": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r726": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r727": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r728": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r729": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r730": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r731": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r732": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r733": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r734": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r735": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r736": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r737": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r738": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r739": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "808",
   "URI": "https://asc.fasb.org/extlink&oid=6931272&loc=SL5834143-161434",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r740": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r741": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r742": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r743": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r744": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r745": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r746": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r747": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r748": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r749": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r750": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r751": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r752": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r753": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r754": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r755": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r756": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r757": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(14)(d))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r758": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(3)(a))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r759": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org/topic&trid=2134479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r760": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r761": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5144-111524",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "320",
   "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27405-111563",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=109237563&loc=d3e33749-111570",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(b)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>106
<FILENAME>0001493152-23-010222-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001493152-23-010222-xbrl.zip
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
MW9]<L\I/M4,>:4LF[5-&2IBP0OEPR(Y+W #E?B+H]0N1XRA%#&$3+SCQQD#
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
MH;[7J&\QPX[9N)5W>CG)ZD/N[++S5W:+PT:PD615O6$S1E>[AX0:^!;X2()
M$]4);* 2F2 \\!Y7RD"36V=9%U]>UH[^6O)NA,FKYPR\--7(*?DXI*-@S=",
M67ZXI]DI/#3<ZLOOO4RL?$]5"_#9D2^"*&#U.,P**P5NPO.0)D?0(<4!F$KI
MH^8\X(YE_:^>8<^Z1+^^PH\T5E'%T>ZH.[Q+[[#4TQK)XU^[Q@><\_1M;F].
M.7!S'*X]2^ (&PRES*9($+(+<]*\%'X+;]\#]:^W0>OF;KP]=/- CXPG#\65
M/[$J$MT?C;1.P<N$W#QK6:3!(-A6X_Q<U=ZQ?\FB[]- QZS!M7_X_]9T#(R$
M,=P@HV4GZ.%XNP;4R_-V[WL9'^3HSLMB7#9;**LQF='[DJ/9J [>)"91C6]>
MLO_H)7#\^"P^/M3XM^K2=.(+H:4$D7BO404W#O-RH4K*^'S^F(+B B. DA#M
MD<)6)0?M;M)UZ^8@UT&TXWUX]+O 3P^.+IN\P-U<( N^Z0^;\R\]!2)T_UP]
M]U#(IXT]0U-HJ;2QYTARS!T)(A20A\Q=H%3=O!=0>K.#$7B55-+QJIS,P:H-
MTQ6$^[27&@J%=;M+,-$A%TO\T6W%HT-VWUS/QX:!P78N8BIEX&281J__B),"
MLXSA=2@"&['QS*$(^=*JH[NW/;+T'G;3NE @JYY](;SL=X+2'V/!8;@FWA$K
M7%K,[VJW9A%T(<&X]:<->,>W[+ ZTFVJ<CPG(_[30 SKS\U7YSD8I/JO9\GU
MG':MD-"BF^KVCC=?!MC?MCQ@X411"?R\IEW<S 8CUP$4U)P'F,+W S5G[;@'
M9/R@O+)1OV!<$39S]=+'$(Z2XF7;?:^Y2%7HE03AGL4)SF'QAW23WJ"#K9Z%
M[;L>?/S^D*-MAWVL\/6_3^HS%X:J^>X&?Q,'%Q@&B7U7H=22,23CK^6F12N1
M'#QY*YAHWB96+PM5 \<;R8*#D X<% 8QC6!.@^++\/;=<_C85Y#M0"O]AL.V
M_AH%M]/]42N6[GN'?KL'XZ*0LXP"_^:F\^^FNYOO8N>/-\0(878BWI $8L4;
MLWCF' JC,Y6F[6 DM.QST,9I"SX-7<T;,[.F:^Z+R\@7TZ*YLEC2&]:<^<5
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
M3!$*.9)RIBN<?+K72M 0]]-O_6,D'^7T__IKTO]S R2#_P-02P,$%     @
M&8!_5IU,91=ZYP  M_4   T   !A=61I=%\P,#(N:G!GU+MG5%-KU"X:141
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
M-I@=!FC\IQ4+(?U(HG^;RZI8D35@A:]7G,]1H&1L>,-@4OGCO5J'D6D#8ZN
M962= Q_GM;L/1]Y!M<QLTGUEP)]#1\\C&__Z2+X?C"QH^2SU;)Q(UT@4N]CX
M_+JNA_?S\?+$H>@*T6=EN::<<7TS=11DN95Z)NSSMK9]*,:$:> ["$#!,0&S
M6HH1H'.C]"GYO4JP@4.5OF-Q(,Z.XI%&K+54V^YU,<:E7!S;%_$B?Y_)" L_
M2G-5#ZXQ/;FM=^N]KU>3F:!%P@O#M349T@$!DPCCA=S#L"(1O3,K/%WZ1W"@
MS&;<0&7M [B?QWFS1'(B,"R+P]\%DUS6XBYES0#%I\[:MU#LN,^>7X$_T&R_
M5.%UQ8D!NLP (2Q@IU"!3,#*,#VJBGOW)FCNY!7B8.^H:'\X0KZ<_I28Q0(L
MW)XE9LNQ[&;N64W_SO#_\AS]4^CT7^]]9ZY1+A<32M,P+5 :OQ"=_<\1&PJ:
M94]AB\?YC,Z']G6K'I>BI5<6/WPV4@*D*,X&>G3PV%7?Z_4'<?LPSFW!@Z:K
MGWQ\-)>67WA[^9?/P]67-I^LGA,9?'AP=OKP@QN8QW;52I'8=<"5_EFZ>MW.
M=S!3C28IQ7W]S8_I5ZG_J*?G7]H8WL0:/ #SZ)HG^$[6RY1X$\$"A-#,BQGB
M;L$ON*QT"$:"GU2=;O,+!'1CG<E6GL\]_:<2Y,?JH<EJMS<TG&[??U9]M^FK
MW_(,5GBFMP>]1Y\&D^V5P*M)@[XX[ZQ86,M!'VZ^DYJ>9=I$.?U^%9KD*.AB
ME4604*8O!1%@ D#!^H)CH=F4Z-"VQ=19Q,ON%PB?6GA&5*V+932"\Q"1A$%(
M8'I@+97]>_-"U,\ &U%E[O(P01 77+8$V#I1K'(H?-:4\';J@SBCG,>K2[97
ML9.M&2$('O^"%9J4J"8VM[^_M0/[IG?#NBW!)WOE)]O'%0D:"S/&#IF0=='G
MYT=)7EJOR'L]I:TSN01F0D%) ]68-W[S6?'[7,K2DUAXX&ZXOZ76FBWV;>J#
MCC&$BE*]<AA)VXW\V25P?M!+.:?*;(_IH/8JR<N<QSAFWBXJ%=1D@.8X^WW6
MC'+(".)@O"9&W!50L)I1MK6-ZW7XA"$:RL\K?# :VG9R9S.G/'A!/,+M8(QN
MY9CPW9S UI&U<Y)7/W<(+[-_6L._JW$^A[&(KUU#W2B!@&T2(O_L23>]<Q&
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
M5_3PNXQ+L9'R*T>%$=G9VN22J#X1]P!#M%19@8$D3,<ZD?.K]W3(O--L<L^
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
MF]W)*:M3-15J+UGV<(+(C9YEUB3C=Y3\U"Y-PBV4*5%)H5<27-@W3\]]:=R
MK'5_2A@WT'QC5K/D4E%)Y+KG^RW+8CS@]F%)F72(J;>_0=K;?:^_SZD^G9R<
MQSUE@ #YO4'<0A(10=._P>RW6[5I?(>0N=*/9 :H!X:[&VT^2!2ESX YNK4U
M5U(N4';;_2L!+SH/A 5X9#93+W2GN6L*JUZ/G?U:MV)R2_GB8^67"H>L%#'J
MU'%K73</>@[3=A"+Q<SMF1\78[Q&4U=:31.4<#X97O_NG3:PI5@0-YY@O!HE
MD64?P2+80-LUR12*/W322!A8&.AH?-+U"-([RH4GI_4=AI<4PE>C'?M2:A:0
MA;;OFD#'RZ]Q12OS*G2.86; KSK&&\D;EZ/TR*-]*LDK)R%^L/- )S$I84<C
M$,V%A@"72^.,!)%\U*<41+^2$#YGJRT_&.4TCN:EV9*3\!;^PR-6HSWL%%M2
M?@>U[ WVL][-:&C_'B#O.'"-F-(*CIF_G%L'^*QIDS"UZ%%82V,?[!Q* GAQ
M=,,#G 0YA7FPQX6"';\VDC$CSQ)VVU]O07C#V>F7W(!:@LR3,$X8/_(BIS[F
MW+:1_A1BOY0+B-P: E@.V1NEINE&*-XQ@\?^Y!8WX#UY^!90C-',Z"XF;]M0
M#A(4#4*K%OUJ&M\L? 7,?SG$P=Z_F^;Y>[/)M#('Y6[\JC!2\$\CE0_XUP)K
M/DRO%%BACWN<F48)K>'840Z4T1B-Z @&B*"=B695Z=L#;6Y6^$FR >7>Y$*B
M0WDCLJPGSGE"LWP"6RP8&-77X28I1YY-AK3L%W;RB=_XM4+8BZO#>6*RNN7)
MLR3G(WV DRC3BYM7IWZEF/8QG7BE??I#>Z*!#Y'[+.KN\<MN64P #0QX41:N
M4S+J5_H@B2XK<>$DT]X55OI9FB4Y$T<</>WN H02Z,4***TIQ,MQ NCXE]G-
MY[U_L]]E[SG5$/J/]/V[L>Q#;^5-1:K]R4?T,Q_\*3]O81 6#%#JBJ@&.,4(
M/(%;+<.U#<8IAOG#DO3V$O?]N061B#6N_K:FACD@RQ&H7O-=)7N\\O_N^N\;
ME;:$0'#<W727?J*['VMZUJ+H?_AMM%QV]#B=ACE4A?_^9/2# 4)#CH5;3Y"%
M=BXP0,S_0@M]=)*X0:\=C<,>GH QN[+_:)\TR%0Q5GC>Y&Q/Q#=9ULQUCBOL
M(KI2Z=]^@XI8UHUX@"5RTN!A:7(8]"3*"HA>"T3TJAOBTC0P;, L7E)FBJ:D
M9QD>, 9D#AM/(Y0U=%E',O:;W"V5;KUO[HAI4CP71]P#%! 97;!5*" S2I(*
M7W7E/K_E<9&2E-1U@9RG@U((?^.$S).06GO4AV&CB5 T!Y/"#2.H>+/Q<,!
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
M0+.!9M9KSHSLT)H-V$]U&;57KVHF950X2%<YPA90@N1B+<12K(&=(;2$GCG
M6:%,Q^ZB=!?J0SR%+VE8[)=,V4X:WDTP(6^$6$]#T9H4\V'ZBLN%J*Z(KZ\A
MIK0IM$X_I,W5)J&>]KCRS?=1C/(%CD@TG1#5W:@"1E0ZY&7=W(LS0]O%C.E5
MI224M).'MH0]P=AT,E4FNDW!02DR0E+<QY)'L#\4B3$_)RE76[Q TH%O-X*B
MV@;E/RW8R'.2TN^U\7W]"-QUQYF*Z&'W?,6XI*ZF)M4KJ[S\85%#?7W2FM"U
MA=*;IU<G:=_WZL"\J/)8$7HQ.L-ZL$-EI<YC>T#2A*8DA(],(QA3JVU&=YV%
ML6!G"CNLT7W4H>]!\ FB_D0C0QU-<SZ&U(8_-OX\=4TGRBJ?['$2*@H%>7)=
M-M1?,M[[Z10<I,S=3%DW%'IW^=U)[VHH!8@C&//"QFXY-2945MO>XZ7]Y6$W
M)+L4G<(UP)U/".;E4M1M6;6 R')<0%P*M),? #M_SWTN[@+M:'41QR"2-3E6
M$0+;@[A;*KWQEV%8?::8C=V@3@89L"G ;1.NL5D)[K/9 ?J2CP*X3':(Q,MA
MNZ1+'9[+PQM6HGN861Q;DF6S'\6P"BS)PKA+PIEHJ'JP.4@[C3!0.[*::$82
M+B .]<]-(G6@&_:*K-@!S)Z;3Z!X0K_#;);&+KB1DO4\2! Y4(^ZSALJF@G\
M9'L7L>LJ4DMK\86SDD1;3,X<W$W>#W*G$\!"1\@6/8T"!>VX1250#*B0?X4V
M@$2>2$=E [N#J2E2UNWK)'5#!"F+V &_G\^I)N/[.6M(^3Y0>6BHF!:V@/@#
M?%#GF$BQRF<:GQJWR+E5PGO6$5/BH70(6$"4T96BB<N+PM8_2=3]7_#"K<?]
MOT_6PD7J_GBR@/BG4[U)G 5$;;FJ$SW_''<Y3'F&KCQ#_>ZH2EJO,?>5@H6\
MQ=R,/"Z/%MSNYA7&8.JP$[34HH?XF/>LHJ0^119/U(%8+8;A>_7=)@:&CVV0
M<"TAIH^+12,A-+*1(0QJ&Q4.!0;,.[>L-M?]OB81>ZSE9=L&W@8_WR3*A8L7
M)YYN6<JY!NU7'(;T9'89U,N.VI?+I&@DE"6_#+V.!:C22(94X1YA-C%\$JL#
M4-LBD'R+8P$3?FK: UPS81-9@>49X.N;JYLNL.N]QE[WOKA4=7\U8K /=XEU
MVY\[;2EA"IM. /=<U8 (6ZH+C;J4[2"SKP@A%#BATX(<!V>))A#S0"][QSP=
M7MTE"K?X>.OI&T%Z[P&\43&-(3\<QAUR;:@W(7D*F) =>FI$L8]\M$]E3YKH
ME6YFED$"GHTY@&M'ZI+04BZ=K07,R), ?!)K)@:O!7G)&FZ1MU:,JVR@M"?0
MC1_'^\_5TX]5>U7@]_;-P*ND[F^(+;''H(@W/#E1680Q4?P!FP". M:B<<[F
M'LP2<%VG[P#;>-2UQV'6.^H,4%#/?3[NALH^WQL18WV<)Q%9AN9=P6X!KOR,
MW2*:4!GVSR8<'L/WLB)+>BIVS4Q?-:C(>?4M*O'0ET-!R3DWWTW_<W&-IH3P
M>R[;ASOT4\:BDP^!6GPDZ-&J7DTCMNMCR%5&3.68P&?5G=NZ@-"D=%&,@3;7
M&X567107B-#26'GGHNQ@-&VSFL*!,7EF@6O  ,:\= 1"MOD_JQ)3'7G!WQWL
MO5YVUT[NLO.NKNV='7$;&.7A7U:GKM\T]>**.&?@X\<![?.IZQTJ*A[G:*_*
M<<Y97W2P:\F1Q;32@ VVFYIO4K=5^FX[O.HH=Q5B<_/22]HR90#6P,JQ(CWX
M*_)>P5#K?82X:MD>X8N]./.<O<%_VI<_3[R*6TXQ)6V7:=T> USI3K<J2/XS
MIX%4;DSQLY+R;ZK(,C'5_#+6'?C2.>QD/X+]M9^>@=GY=,)1][,VD=.^B67[
MX)U4:O>^'ZL-N_>IMD.Q\B0F;]*13]<ENX AK=Z:;3/EDQDV!6*T%<1L#=H"
M!F78W+)>0,"VU^OKI.A%$/YH8W](SYJ!^[/V]I>=UU_Q[JA5/=_\J)6Y=3<Y
MXO/>,7LNE/[OYE/S2W:.F=,<'UW5'M4._/AT47<R>]'$"\&2HJNZWQ>O^A-M
M9VR(3,5=ID-VC!9'(:O-OV,!(< ;D6^ S$3VT7#)-_)I0$/]^^P@&V4AQC=6
M$BIE'N ,<I9#P7RWS33J8OQBAW+H['M4$N;<M>5N3!K&4:I_:738-VT"GRG2
M)NN ^1)"#D67]&-W0S_''#X,X-(Y5J3WO!L_&PN3;8K$HN7?>B];?+P3D2"9
MK-A^O-=X[.#KPG<[9_.5;O(.ZPO53;=D9^:7Q='*$V/O_:/_0WSNC_/>;65G
M-8X=OKO[:B4X0S-O?:-DGXM%?6Y#.ARI?7YJ.K![\YFED1JZQ[,YY+K8(T@M
MY6/N16X2M6XS$V!Y0<-BF<S^]\U+2ZRUJAMG$#'8%K0>$,F1_ 5$BNN@&SV1
M??P'*>!4]Y?^)UTSCI%?$S1/NZ6EU1&<]C\?9UQ;_>C73#L5^*-SB"&@&F+\
M9-Z1O=*(AC3L*JC7"WH,>HJIJ:IM\!] R=0/,$!:F)7P+.PD%@=E $3>Z*J7
M "/=N:E<:7FH#W,Z<J +BI7Z%)>$"AEM,TCHW0+"J[<R8@&Q.U)O_;+B_S2!
M_.L"C:3I/]/?KMUMF6ES[>MJAMU_,KFZ<9*JR,;*$C5Q,EN\@'AY,609H]@+
MX8^#]*DQ%DR%CI9  2U<=&V@%L]+%A&J0D&LUJ!MX%<Z-?X9:1T>^N-2+WF/
M:YIS -W@U\\;#P9%0XS)2QISQ6-3:8">+R21BH2V)R'BXTF<*28!N(9%0,-G
M!BKK:,$'073K_OZ+_6- 9)$XX;!JK+G:/\QOVR;_#IABG79RP.F30VV"S_R,
M3WU#*MHR7Z7#5*S?HW"%[90,]@;QC EY)Y0 6/(;"$98K4DJDK(./@#,J)7]
M-M-H9@Z_8M*?3F>;@R<P7M=DGV#\\PF<(3E2./>]KC+<D%38R8_[SI#&>P<?
M[F-M"ODB@)=GM8RN[8?Q=BWHH4[Y*^53K!7)M?V'VB_Q F22:!G9X3G9O@:\
M1)>^AM=*W^.6T:W(!P%4&S(SCIKD7!XP232%DL5CB925T*4>+_W#[SH#^B[V
MS!35S\?*J-/6XLY$!EIS&HXJ@2KC'7.8%F1;P'+/8+2>OHOL ""BL:.>A@^J
MC%Z#_'YY1?&9;XU+N>7?-%M/NLX'5M;<M,N,$1F,1SS3=C8GOFAVH]_&:46+
MDBE+J@&7.U)J.G9[YJ@Z.1[A@JY\?/KH-JA 5A![LG]=.,WC:#\[6.:-/]V?
M?O?DP=EI2[R+6N\'F!$7BR _CVZG!&QKZ^!7=QQDAVR^!3Y 9G/6@)[32%!G
MEIMN)QU,H1C#7LIGJIWDO9"&F)BI5Q%(RNEM5QE"KM(9<[5D]\XY6 :^>=5/
M7EL\(B1 A&:+M*$9MN8C4MCW=P.7WP0(1'4$'CZ-:X79"=@&,?WQQF&_\=I.
MU66S =SM9IW&$Z6(=#BHL"#S[ACT<C4SV]2P+@MX1TC)9\#C_H04B_?X_N(^
MR[W@B:]/Y@\P)&]\C]3)*$LHPD(4-&E0)-,WD: %A*5D;<+B<+019I7B$'RL
MBVTBYB9SC3%&19V7SH.XVW=_2ATZ^=;N'H-.7K\P!$E%B-21A],<;UQ )#M-
ML@S'A??G'K^,?V0@$W=.,0"!&,W'T= F'///T/ ^M WF=!GL 0H2+X(SF<[(
ME >_S>;0-=,Q&IP@(:;Y-51#L;P@>U#U.#2XC,0]7I5!FYMC#[H<"?TQ,;HR
M_]1\)A=+,5&)\G#J= -MQ*=R:SRGK[T@FT*YK +;%D*M4L C:H?BEM1-NT18
M_/#K(5];>K^"[%D#C3TC[P"MS(X.DXB">4%+Q/96BP]YJ?324.']K_F5XWD%
M@QR8!,E*X>7=;%SL$]@,DH"R-IL-@_D'>C H ,<KM!F(X;O,7_Q>17WQ^TL1
MZ)B+P \)]W:TGGVX"7*8'"BK6+2+<*2QJIN\,[0\'/7GT$&-66_37[E2.K1A
MK'4$+8YM[LRQ,82V*H["9W)E8VIA2\<MPJP%B!)!:\<6\K5NRGK8KAH2Q(+X
MUD(7 $DGAXACNAU55J/DI=##(E)915W%_E7]9%S#(;<']Q,B2@^-D#%*CKHQ
M@\4S6:IUL /DK#A(FFRG(K%KA\FKH!2%:XM87ZL57>MZ"[OJ#3,M)IQI /'4
M=FZ""15SM4DQF\A;I1%Z?+I4WTM0/VK& 0:*0YZ/-X[\XM(06J)[?A^Y->AI
M>W&GD"[A"]K0.I>#W("(CS09#@7O5%L1U@Z*P&P D<TV.,"&A<V0,G5(-0?J
M^YQIZPGC/Z_JY4=X\81?N9(W(8>:>N<"3<[T76&M_DMI^K]F!!^Y"V(!)9*9
M=G4,MW&&#H&^K8UX&L4:W@?('TN(*R""?^JA:&6X1_^J+8'"#UU>Q-B(]7O7
MUG"K&NOZHH?_J9B9G6SRF@R/3^?@ 2W8A"F/! BIJDVD^+8XSRS5CL_D:X F
MV58= +G"[5*[;-4.:+B-H"6I[[\2S;I=+F6BPQKK6<_(V.Z*F#='IV:M5X_A
MO2K.+R".@D%-+G6R70''P+6"G@6$C6H;*4!.@NQ /UD#33P0R48#:<U!=E"&
M-)YH(/073398H&_/EA>$^"8?K'[#Z7787*<3X;#6ZU2DL][ZI_?O!WTUC*5[
M>16GW.CX>B$U^OP?^?>6_!/2?&HXBIQT4J,O]:0O9\5N[&KHIAKHQY5YL(X$
MF:G2'ZCEVL"7>U5.)-U.B5W.'%IH(BUI0]*"5K.A74\]7@R3XB4N#"G2<K(Q
MI^01"<GKGA06\'.83[R#RPB3?@SL)M"LHI+4+J4:OOVLC@A5S%;'H9J3H%\6
MQBX&1*F7W0@3>NX1B=I&6*YRAH^I0Q,]HX&B ]QN_'M4#TI T52K)AJ_O@X1
MT[7?O@C+'8_3IW6\\)NO+RLGL=JJ)SG;!^I$AA/<X\[*)\'D=P_=*><U1C6-
M__H86^KY#A&POGG1\4Q"?<L/P\\'#OYY-[UT+^-+01]Z)#7J93W_Y+8K*S,1
M+\'RLF/I\;1WVLMV^B8A5XJ3^XSN$':0HN3^T#DQ,VT!@5)3SB+D<AC737&%
M1#)D6Z=U&$<?2I;13-HUI7:"79XG!K K28.MH]O3_'/;1O4&9YP++LWX=V]6
MFU;H-0A_PLN+I<\OJ:AN&Q;5N@H(2$HG;@EV'3ER<';$-ZB;L@+RF>0WUF<\
M\;IH5E-Z*@!S>76510K_3:VO]YC^W<!#1 O$'Y7F)^R'!L9-E)&SYW7.'OIS
MG=[V964K-=YVKEBZ@_-C;Z4&^).W@/@4)?'D$9:03P$?DZ4$6AP]B[)C7&Z&
M7D[9"=%E#6U*/_EM4+L[^GV%+>]ZJ/JCY32A,M@F1(F>^V2+>!HIF2HT E@I
MWXG.]B.6/#G#[6/U_&VN/O6\8PI:#S8"":UQV :0X >B!#NXTFER.(AL=TS_
MR:Q%9U>*>R.=:&9?*$ZG)^4VKD 2Y(YO:DJ6?"T06WNU-J)X-5$)CDFS$<:!
MOL?"F:R4Z=?FGWE+DB,/:-Q(?;N&]NISL>:&C1_^6?[R[K:!$_V_SMQ)W-.N
MH;5#<'W+]L+;1DDWF[5:.3IJ7*+ :("0PMD0NHU4(V-EPT0P=T\7V4$FRE'O
MS@("))R YFY*1#HB0EBA00_& 3SVOBTN))VR(I1BT.],"S\-R.D !Z\=:C@I
MK"R16@[;BXS"YCFL>!&E0U3UDX<;*O$%69FS^L%27!LQ8P%A[%!KCTS'F5.<
MU?D>Q\=G!CGTL.VOO>B0X)!G2%EM@[DMCTCXUDG6Q-LG)%S+/#6-[1 1E5 :
M[E#TEA4FY)0E_#=7 ILFB]D$2ZU6G!G96EE*L8:.S<C3!Z@7<4A*CXTCY%?\
M7N%"*I*UY\HB/"7]S,195CH%!5(SZFAN8VT4YQXBQD&B]&JW,05&&:6DW*E&
M$]&P*,P_SGNBT%7)@=<^@X]!MX 0\6 S5XC[?8;4TMX;P7$4PDN DD1!*M9\
M,N]C2@F)<0!(R\"N)(= !4!X<YR -H<T"+<X6>.8!*.D+#.HW+.V;W:\;AKE
M$]YTX2]-7WGZ_UARI+((3D#QD89AN!58*T@UPQ/&WF*'2$6)7!NL UEK +L!
MWM9#=*[8RY,0^1LH*%(^+T.&6[K_IE0_S.M GZ_*.&+1KN 3R:VJU=T.=0['
MK#WO0EEJI6E3*TU4@ICFV?H?'*0LK(1-@=X6T9(\ZI"?C,%'#G61&L2"1)/C
M-GKJ-!Q 3/5792SEBF=TZFN>HY>=.;P*Q*?*^NK<(S3;W (Y9:7\F"D1BAJ.
MUU0S-6.:&R;*H)A"^>(%!$(82M"/64"LN.S&2KTRI5I)=NW&KB)EM:HLN'UL
MJJ2IXY)]A)E(4@H>'.38+>DG/@5$:;-(HS"7JHD?XU7^@1/DZVI*1P';VZ@U
M/V_5%6@*@AQ UO0JT&=8@N>)ED&:AWKK*KPW2X%ZKG3&A"1HNSX1-T ++2)I
M-<]KI7V?0YJ%_Q>T:Z2$6=)2\BD,Y5?5CC!3^])>2/.F8I.7 N4A7A_-&FJD
MIM*!ZS))?;(4;4JBZ*@9*+2S2 2=@+V+PD\6;KT<$[CY]+3SFP/>-^=H"9OG
ME@[4Z0W%N/\J^:;:J/I(T%9M)]FU<!:K WC2[ C! XJ5T=,(QFS]T)*@,)41
M48\DDF!?7U2GSDD+LR*)Y;3EB>[V^_'G3.\-Q,6,O$E]_#@P+ C==V7&R?JP
M.L(T_F+^H?Y+MTD'B!FC:,A7BKN%KOW)JR!*?9A@T ^Q6;G:QU7+ %6N8G\X
M3CO:P9,?M!%@\.P]H;18:8$>WZ_0M*>.N)SDZPUU2YBWA;&9[%W%H@FAZ><!
MERAO+0\)$UJ/;&;:D"V5]SB;(1N<-:E:('\+AJ2Q38"LED876HD'J$/>7Q:*
M73O()@9+1TQ\00,&,H4A;F>(N58C9,+=P'.=M]$M>:/Y5X0Y9<J'(:6(N$JZ
MPHZ\O MWF66N&K#PO#5UA8.%]T )YP >G[/+K9U[T^$W>C:-N,R+O)+WL-\P
M6N>C&P8MM%)$9_IFWQCS3@ZN DI2-\643_MT[NZ6O?PQDX1[&=(B&E((JD@"
MR6"&:L<G4OQ!]N ,6Q_P7T#(!OD) 6(MGCO=5!@H)&63M,1?%A 97X#(^R6$
MBJD?H5ATWZ88J@%I:>B,GR0U5YSO[7FD]O4\MVUT8Q=LJBY00U(OO[$C+8V\
M5>*-.@':99 ]7@2M+<Q]0J+NJV?Z]L]5^*B.W3D=VGCC8<2U^)NQ6[WB RY?
MR#NVDI;',8<"U52_"K($/7GHJK2L6BH2#NK9Q(TDIHO,*"BR;2\Y0&)IK4GX
M?;M49:#>QY_9Y$ MOK[N3!LN$KB[.1\(X,N%5UQ>AN=5]5_H<9KV]>ZUF/@O
M$*,YNS<3G@#I\'*&F)7*UE=XDH_U8*S!?"DZD7MI)D/=ENZQ4D*::@7 *7M*
M#H98,B2*1)2,B'@SB0RW$EJM.S7]-^9C5T+EAP!'VN9(]+ZN:.:*9RQ)A?OI
MOKH$K:!DGY\+B"&6/*F?>IFE&S;JV,<-64 ([>31"?9M#!N;-#6+,I/)6\5$
M\["N@/'& X_(AXI#;4S!0?JF2(QSS.9GPL!GCV-*AP,Y)<43?ZY-XJ]HNHHL
M+OV?S [:__=>KF:IW%EU4>]77S1>6;* F,O$NOA-1/S/C[L12J^@-.78 J)+
MF+\-1;M_[>YQ6EOBC9?G=1!W_MSZI\'VOVWN??G?C[=+K^_=:KV[,_"U8$V(
M?G:.V-@]*GDWND -J8M?*Q^L!D5\0D:03:.R6&6E=BYBFSY>RN3; K%RL;*6
M8D"BJMG>,"8^/MQ] ;%<!.$D:0*6#H1U\(G7L[1$;A/PY'<$P2'A%Y<=%0[O
MT8W&&?Z/[VVO(?+16;]/^%"A-LZO<_FNJD4#*CO8K1HJ!O7P$ [DJA.YGFW7
M(RA$RLU!ZSG,S4 >*CL2O?D&QZ+K2G2$5UM>3*>\OD!=9S[@"YM-U4##[<==
MVSEJ;6HYB O!95'K1=-:BD678U5;NQ80E_%#PMX]W,$7&+\GIT*QR\&.G H)
M3AOZJ,*G6GSAO"YSS:@D.Q1!/UM9T@IWWUXV[ODGVMF@4Z?#&D\R;I8.*UV!
M(AGQ-M;A#-FG%NCSG]('&-*93(H^Z?Y<?OBIDS(^QZ2F>V;N4'1#;9]CQT?:
M&K?IK%.? Y6IWX]U6(YW:5B\6DPPY89TIN(LOZM, F$\\ VT)1M"7 D]1Z1O
MY%Q /8!'DH\"D0RIO@FO<.V=:&\O'WI (.XP>*#ABI/W=0>//:\4P8?B2T8^
M>Q(Q-D+;_98G#!TQ2Q!1@XE;.^,J'5>NM(8^GUIY9<.-$Z/OGK>YG+CJLWO)
MZ3/&:3%.!.&]'XO30CYXW-_XU'%TX\?E.X[MCGAZ/[@J\>IQQ$T1G6)(0DEQ
M&11CB,OW7QVF3GS-,]83!&/5"I&UYZF7"XC;X>W"!AX=#:_C#G#>/PLS>^#6
M_ I M<U87 [Q&72(L78VJ'1VJK,H9#X;\2<G@+8JG33%%O(QJ*R2?!0T+>'K
MNW4*@M;UL*^!:6)1"E9-S !KZ@<H:A<N=[.NS)(R:83%M01C(4E3,,\O*$G%
M[(HH?5_ZK4I(>C=\J'<*I@9+F_3=O>MJ%7;MHR[][.VQXO1HG":I7' $*FGW
MCTVM:V+J=4H..L!+'@>%^K<77Y.IRY%N C%X#:Z%J)>O>FN5Z[Z^;S4DY;=O
M(TPV'I?;F/;5UO5'7HF7W=0^]NM\4>72 ,O,,FT#^:C'%=WBOXLV)BF.)F)-
M!JGBOPDU']_(".DV.'H;N@Z5%"/*4#F\ @=I5SA&E,_<>E8+4WM"Y<#N<:+I
M_@@B:, ;H5_B&<WQ1MI7QN-0%T94*-;ZI>*/DUMNOONB84(^J6[B>+*9FL@C
MMO/19AAO4"08->XM!I:6.#9SC2E=HA6.W)!I=8,LV^PT*5JJS@L+"-TOH->W
MT77<:FY/K=+K9'?,6Q:\2CH2-H TACIYA;:@&_4*^I5/\96E4:M:KMYH_[#T
M0^HOQL8;+W7W5FT\[85H>A@AV'CPH,?=1R;332O/9I=??Z%S;/=9OYV+$<CM
MO\\WFQ<0:*R9&D3%@K:.C1&QDDX^6@M2)[6=7=,Q!40>PY^;PO9]UO$TW,5L
M?@&16J?O2.A9P\0WOLIQ'T$?>=D7\>7RUUI.W8.58U_1NNHFW(&[L(#09_%3
M^\EZTL[,O+1V4:I /-C&-:1T42TY.RD]G(T@NO70FM>O7D$1Z$P5#MX+W9$&
M:K7XQ?YD^!>+4N%=Y:&-NSZR-H8QS*Z/"H>\(Z86$'7X:7,)80@G)F9C,:1>
M'L4-3+TE?@O;A]BE8,W'W2*;9%RC"8XSR$CCH*&H_<#'.R_""RU['>=V>;0%
MV?>(,_4Z(EM7%G_YT7! X]</B>-OBT#ED,W!7C[3V(F9A:N>_CG5+:FP;!=9
M8Y"*HY Q(;70!="Z!7N%2_46$,M(0NE'WG'P0+(4J4>Z.\BS66FQN40\8T1B
M3/OG,&(E7P_.39Y[MD4K&+"3ZT)K 9/V;O+AGCETIKH@L2O'+?1_)F/T9'BZ
M: 5G)7P51+6RTA@_^->B (4DYS%H<GIP+5"25CDZ^BD\+J7)6^:(\KA8[ ]U
M\BFKZKJ=+K^X-OA[6LS*4^S%32T'B#ZY+7[,6@7E4]0W/^P&L/^S(RCW]M]U
MDFJ6W\0T?E^JOV[J:5[@3.*#<;)F@J2\P[/E)\6*V1I'D].NA8M+IIGEZC 4
MDNIT$'>!,&PIH2:S0R^R")"?5-#NF&:S%(A-=ES9'4&;>SY9:$.7%K+ ? FL
MLJT^-=;EP%E/W@A$3'^^6UQ;W^6UX:#R4J<\%UBI+-G,O6BOH)J$4HTZ6_2H
M=*'^U[*+9PN7@\1;)NU,X!:4IC(J..T<3O/Y&0 $-<5*2LFGBT=#S72>#9,Z
M6V-/#L;1Y;R*O[3ND-5XD$0EVT)-H*,_5+6 T&$(F+<IF\%GMYY" =*GS)H9
M 5>==!;_'@M  _^]8:5%8-><@I"!/<<6$*>Z:A^NZYJE6W\S)L5*L0\??;9>
M*F@WO"Q_X'(U?JUH2@ 4RF6RP/[.U-%PNA#=W*C%(V3E>DEQIK6<C8!G*GFG
M%*?]+<]F=N!\Q(I/:I_CK'P9&+#;[61=E%Q=AX0)E#_M3<4LV@E2J'3#%5@2
MBL\T@I&FS#:J.336PK6910_%ME+T ,\TIP(B 1I1P^T)B"A90&3.<WGH9)=!
MF[6]+YP=O"1CR9@33R:8IFR\+&M&DV0B^<^EE'Q(VJ27H'<B[YT["]K0V3SM
M*HD9HSE3%\-7NBFV0Y2N:Y1W=RD?&*.ZW96XRUE,X<:?K3RIV7T@WZ=KMM-T
M FTP4T<+EF37JZNNEK5<"!]D2BHZ>6]SV\;:WP=;O]^M(;]Q"XAJ#D)!CH_)
M&EVUN)?DS8"(%[A=8D.3W"D/9Z#/0]0BZ#Q:*Y1C8S$]4.2:L=E,Q'L C$<\
M_SQ1'1[57A'K\HA84!G^T1DW9"M.9:&FOC,*#3Z(JJM.<;2"ADD,?CU*9=@C
MDHS,M+[QY/U$#5CTUXUEPHXLR.97+=48\FV/M5D%C&78='KVS4UO/]9?Z[U1
M/O@<0H'A 1!/TN%' +5:F-G413&[[-H8*NO7 +Z]R1$A)#T(OAA<$F8TV7A"
MP".@R5Y (4N2-=O?49Q3=E%:-A;A\4??)J*#0^2FIQY?7;GUU)8]BE.7%Q!5
M]<Q24L,IZ'W\$R@YJ/])#QLMO0AXWEZ:+"'JD_C1!!-X#[NJ!J#":^.XJ;#O
MX\EY0O*L-YX ZEX>_#-L_COCR;A?/<J_5"L55M-.D@_E'^8RV!=@M>5MIH.>
M)ZLA#5D99Z7J8Y V2! 0LD9M(:(",_'3XE)5<6 H4_OW8& UP0"B\E /A/)R
M$U+<?._)JMZ*S0[1':;1([8'NFJG76>KU\-/=5Z]//9IS;_BJK-(S>_)M7&)
M2/-FD)A"M6 [@\G'('XQZ;S^]=%),9,_[2OF9C%/U-?59([QX^QNPRA9^,/9
M[1$)\?(*HUJZ5>A&1L.ABS<=>H+\WY;\.L)?P]P ,56Z\8IM)+3<HUY933YQ
M#5PGD'PLCP)]\8 H90J+#J-LA(JE$02QJAS4] *#&$601TL-=%=SS0VU_F'\
MI)KE8?[M!9(".YX+48I#A5,L>ASF[/,1R.X\>\W6^9&&#,RN(E+2/V<J"AN*
MQ^??Y(VN%D0_:"R^AY*/NVW*W>AMY;?!JM3N;_YJMK=39?:_C_3G__\]$-"V
M2'N7=LN_R9!1$O*QEFTI:VQ,I;M?+,I10RHUU'%Y(*5#I0_>>$(5EZ(U,,X*
M4ZB7SUD"C+)NVK6BLREFX >WD"0.AL0B] 2_J@&^/Y2PAMY+QP3*<^Q#E;P0
MZV>/@?A6BT#.RQ\CX\)=@EGDT17!F\Y4FE<]6/;ND.4!RK&=[B9V99\>?N0W
M:_U0?Z ER"ZL5BC.@F-)$7#60]L56TA>DA(>\M/P[GHE$W-.\0?E ]><&M[4
MF1Y7\;%)2EP:)EI*O<A-QB')X6*DOC<8WAR'3,+HN]15\*63>)H&=NTWAHUN
M-Y,GIZSLCYQ4O4=77\I2G('_4/[Y3%FG#E]ITH$[6K":WN5'>S$AC^ KZE"6
M'H-?%H9;$4D.D48/1F)B0J7AL;5]% <HTKZ\P]>;V89"V3@" \4502263\[[
M0(5-$U'IE&5_]*M*LG7+N6U_W[OG=OO::N.CM]-+[RYZZN9IP3GII/LC7&?%
MQD__7+EY%V'0Z6B+;/==_ZG]RQH7#ZM$ZFI1384H;6Y&5]7B/PB;BGBQPIFI
MUQ?5>R<%<*D84ZWI5>).-"E+XL"=/J&6VFS56J SIPXMM-P/FC'*H,V= B&C
MY8V[N)JTO0UG/0LT#'JTYT)1OHPSG/YN51*HCN ( ?A36JILH)B'6HBF^ F*
MG90/0D_8Q':O6L%;1.F4E0 E%\B<D7SI9^6P[14[2>=QVB/A-MK*(I' [H][
MWX+0]=W4RV\Q.]&\/9)/#M%4)-LB=O;=E>FA^\)='[.MK=@I/7LL]W\M>O"Y
MYJ8/:'XOXP\?$+6U:8-^P>MEQ08KRIKO'EG^-&OC7X#LW?#J%UE?IH6RJRUK
M_D1^U9-CH0(9\].,3# U#KJJ=+VE1"/(L7T!84X5WU%7.+(U@^TGI>M#,VU^
MG-70)) E+6FGFJK5E)4>$V')BV/[PC$V!E"N6/ :J&WH@9H$V/7TP*P]U0,Q
MBU;F9T"1ZA9@3/4K=JC>,NO1+<PDPG)G8A9N.0:EN*CZQ\81VO."Y!&4Q7=S
MS%8YJ+K0%IS-%'Z0$Y0E@5Y\=T;JDHC-!/.*KU"L#&V4;SGMNA\H$51XM&WW
MM$NK+64-SE>;N61Z:!\W7>_[H.V2\_K4E3ZK-YAO?9R]X=1;VD'\@[_K7ZYL
M+3(X]/G"?>::U. W?W,_[';\0?YWT5#S(Z3LATPT]? 160>2%:DZ<;6X-OP0
MCL>LP?/HG]Z+_6Y1+Q$M*+\?>QGC=PJ]FD=W06D1I63/U\IG\ FQR/@;MS:M
MA:5'=E>^)-^4#7;!H=(*_.ZJ/LX&$L]C &/DRIM\OY.-D^K%<ZMQ(8Y#Q[JY
MXL>X)3%T^DM2FCRS"ZM!;5F%NU#.7$J.@M( D2#($/C. OTD@]-VH""@BTV]
M*69:3,1-C*,MV<Z2;DFG41&I\L<I*%GB13LZ=]GG(;:AS,MQ]L; @^ELP3\:
M>TY&1S =O[^W7WHY?;^^T3I77<T-5B>1F;"EA&5%(K11],"3]\VJ)%2S;Q:=
M*?#^HHY=GUV$#VY)]5TF#PXX#<8?FAY+LAQQD7_O&.VY;)=CGT'..!_BL-NJ
MH960A=6#QH FB:@=E]9@4;R 2%1M@.QY3$.V*;7\FS\W=<[!L[5P<W<$O$<R
M?7AR]V"%DS+J8(3'H:;Z)J]=_JWO_EM;Z)2G_6]$T:_U:H&,(V\##^3'J]NL
ME2%Q;>,.HV0_V]%(\KH!CBDY#MJI\('TVBU0+<A/49(&&C>$MILDXXN6P$?+
M8$,(7PSY\D=-H7P),U6DX[0>+2"8PH1*R);/4?-9EO7)GH0 OUI5"[Q3$J'9
M&F33!=M).EP<['@<B^[H3H-O;B=J<_,C'/=UOQ#WSKYQZ7N_Z6Y%W?W[=6]J
M-_9LUWZ\_]*5DV\;TA-U'R ,30OWOMJ$CNSAW_CBIY>-6)2X7&,W.GD!\=)O
M>E"!4;TG5,<VSPQYRN_5@;'-3&&(/ **E5"3L%LAO1B )>5F8D)D2",8T_.L
M:QTH:DEPY&'18&$1R&PNQ&!1;#"5)J-K!I*>=%^)T9:!:[]FE0I'3N^9=U?$
MP8O8RA+N!;S:5'39CC%+&;(13UY]T#;(G?5YF*%.T,$R/UZ"KP]T!PAH&S;?
MWZ;I 3V4$'4G4'A4;HSU/92]U9^<-?B7A4*MC1]N5]_?V#)R^K#.HG/WD\E/
M3B_*EL36(SJ\JJX6Y=98'KJT27O%V_.Q)DE[UMP=VOG1&T'=5+@-"E3L5\O3
M?IRX$ T<QPL9AR '$-G,K;6;O@F@#T&:@+VX@?ZD#[:6*BTEN*F?$J^,&&[:
M@[B@.FS^S6(<GYY3N%;YJ/BE5]$3GLQ:*P#8)WPJ%]JWQ!"_]I <V[FU?BW(
M#&:-W50(6"*_ [50P0"5#@T<X^'JT#PF;705=#]&3$C%U;+C7'E$?7@-1+I#
MWE?35?'[R8^,>;XZO)FIT!,+"$VL!5_,U1TB^>*K!\DGQ X6H[T>_<[,29*P
M.?#"UM0[6^L/7 KY=7"CWH--+0?_67;0?(=FU$7O6KM+)W):=2^=]NFQO5S]
MFJ)#&]*QNK_&JDOKZ\S4M-H3-RKO<C;N5Q=]T/WG)%D+SMHYW '%BVN8$LG0
MMPG&\"Z0*HE\'?[LLNQ8+V<-=!*O/[I?3$5^NSMA-I %:@;V%T&QY:CZ",WV
M..&$&YG136W9RPWOB)=?ZL4:0=M;+&(^%DB9.9S-_?!V))^&EVCQ6=DX)$4+
MPK7&.1>^EJ&MH?)6@C:\\\6DR@Y</, 8<-/BT1>/3 29]Y"]I-/^[1&$MCA"
M6BW.Z"#U,#F]86;XQUT#\0>#/2<G+(N6>\N*TF5^RZH>'=ECN.K^X3OTQH\:
M&H>?OURFN3KIANVB4I\O&J\?(;_296/)6*UAR@<FX*.F=>*TGN("R5WBFL2-
MH-,*[:''BA-D)XBHACKY7UD"KA'NT@)BV(,O,E*MG1":<0$4WZ+R+A>%=2/[
MO*X"USU&MWPCKS4F[W9S3.W=5Q?H(O/YMH"XI,XPOA*[9O2PI2<X-JVO\"*;
M*_]F$Q5X$M$#PJE76P]Z*+XC[A12I;'I<  PUN(VR$>;PT?Z51LHG=[B#D?>
MO&<6[/"<; $0VEE6\&J@Y/9W>%,C,6G6G8J<S$,EPX$5U /3$9IW_;=X;:OZ
M\OK"R>.1R-$3YS5CK*R^^.F>S:A>L7W1NT^A:\Z]WGF@Y;KK*HT[G/\:B\J6
MI1_7_$^DTMD?4T9MO0,5EPPSS: B205C>CMX@J-'O@ZE2';YM:*-N:'TM#@E
M/06^& _*I$YN?,Y#NPRR%PO^ T2U.6H)(16/QUFNUFT)<3$4RR]< 7"2'TV:
MQ05R)V+V_<E':]_:_5971U=OYYWT,]/+OGLU:3 B3^5F/OB_DN8%9C25BU9E
M^R?\GX?["/(2A3;U'ZI<7?0UL]#K!<3S'^)I2J+?V +B?_K ]VZT'K4%[]2!
M]U>K;;1J>-Z'5AS6^+6BE/*>:3$=/6+IT3.G3SS=-W,1,*BOE[L%T9\.!X7%
M%2L_-)VO>]D[O9FX^=F%U%&=BS$>(&&Z01$+:T)E"B>HR M )T]1MD*VQZ&'
M@&?S F+%O\K'E,7P#>!G,SUE 6' OB@[$4I9#U\"QC+)MF+K  %:G[VS])L7
M48HW^"9DR -;^C850<F;[XL#:%['<N6SV6"G^."WJ+ZSRH0XFXVO:QO.KV@K
MOK7)\L^6OPP#KKHWG/MKZ<?=L8C$[RLT?WDJ"[&:2#2\K@[".%F6,Q-SU1H5
MSG:-E^3_UF4-S@;*!]R2&<ZB,.K+F61UZ!W"FI&M07PVQS:,:L -85F3?0;(
MU\+C75)DI\E&TH=L@K0@EN=+.D*JP[@_B4:;4\S5YIP E,#+8\6>K?3;HYNA
MFPH34KA\7GD+$RBCIXET,1MDWMOW_'X&E)6A,E3FUW&'L[RAG1+1TM:\;)M%
MG'#\\@FN(<8>\/1&N44^+(6]<@1>U8P3G!1NV5\59Y.V+C\83(O;R/[KW[O7
M8R]6G\I]]??8WV*_!^HU0V6I5L.[!M4+A\XLW AMD%;LC^9.$3(*];O)^E*J
M(2G,2S\$W[_Y@;Z6E)B&.2?N".(%5%<Q>,+^G"J)HF9SUO,P_9+/H?///X6Y
MG$6_]VE0)P/B"4C-<DN.=./.$A'CC51U*5-;G'$AY0L(?5*X6) <$Z@G\4PG
M1^#:6?0\"K<,1@(N646A0LQ\1'\]\ZF0E.8/110?DC"-2.V= 2=>OP$I=Z22
M<*3:"9XKI.CI7$7X.*%.($ .!8A+LMA>,I9V*+.*F$'9I1+@K"BN<&@W9YD'
MD"_A<Y/@_8IEY L :MH(R.ML(1ACW$'647!D+!W>JLXLC0+^)^S:3R,D)A_E
MS[T=XYC6I0[:73^GWBM6AZ$7P['@=AF5KXY 6Y1/J)>962H;*$',M8!/@2%I
M& WQY0BR%O".:!JF1E*JF+Z$O -0W2J"0EH:<>F8!!G5Z*;_?5$&[%LF@I((
M:HU?/AGLW8,5R./] ZK.=R<W::2.:32OD32?76$<N^6L1[TY;\O21%P^+INK
MQ29*<$)BFPCP0=5P0"H/#6W 97/T*3U<0_B,DV(X8BO9 2#LZYZE0^O7TM,-
MF%'$<T^&X)!:Z 2@QXMUBY^X$^;VL4HM>)U',B.\%*O!%PL(J@H)!T!4,)_G
MWYG!L0@<#;.Q &;:D!E4W3'.Z^XZ!X-1HBG9"OR9SC$C38@.)9^HJRE<0!SL
M(4=(D(;?'KB-O' HF@Q]9HWW:.ISBL^W5S!- >14>=0C2@\'IRREK"*?!F/Y
M=(MP['(.% SD[QETPBTE1?%P&BJC,-6Z:I"9CC$2*ZBZWQIO/*Z<P-J!ZW(E
MO]C>,KQIF']A4_DXQ1B@_-4Z4AN?/^+UC9BJKA@R$LAJ$?HE8JU(E.'648,N
MT;$$N[TUKSBOZZHB@OWZG*</\M8]CKD9I6*43^2ES#X>.[NN\<^5IUI7)U+7
MQXENQ30Y9@<Y]V'1,%[YDK*6TM.(@DWI K01UH;2.NH$79/%TS^E!J)]E2]C
MZ-.$++="5BA@Y_.RN]<#LJP@<=4MB$DH)=_D */)(/)P-]L[Y DAK#[/+\79
ML9LZ%"ZO5N=7[7!<G=_4+\6EP#.J3LIVJE F+X=^B9'6I*9]8($HD7N9>GL!
M84-Q@@0RU"V,)S H7>SB5I)&)LB0.J20]CQ"ZP+"&-[2]>]+4 VWQ*4>H:BD
MPIX?WOTQA)$'22ZKTB/>;;$ZM/*JZXN4V%3]VL8-%^W"(Q!)2S>41>A>V/AR
MF67LS%KWK,3B_,VQ.TX<][O2N/KV@>,:N[4R247[(*+BN*I3^#/5.6*;XC1T
M E1((ALD(WX'0=>T.9%>F 7K%M86"OKAV;=ICKF,Q/RCA^WYZ//(Y;RV<NS#
MBO&X2U7/#K=$5C@0'3YH@@UJ:)(PA2;2!42[OB.?6N=Z&PY\.O%[.IV5F*MJ
M'37L_SUJ2. U4OF.-%Z[B9!\7?D(7I-W;Y-J70\F%"B24*=F56B00KMY[=E.
MD)$#X\[*E+O29OYK,;ZP,4+_9^(EWCGCK:]"OOZRI>WL?/<X[MKAKO;/6];8
M/&H2@]G!-[9^7G;6M>.GFB74=C!4(L^%3BL(E'ZT'A8+W^""/V]35I)\9@3^
M6E-9BBUO 2UY4N\F%7($ZO4:P-A)<9DB,]7Z<)QN-%<'2I;1:2IKG>@55RHP
M^XMA5^B06!G>9F/04TD.E^X*/@Y^F0E56%'>NE%Y(F@C:GI(RB/*3JH[;!ZG
M16J21P /FIXF,"3,1$R XN*X/F@B;QC@H +?/AOF)\3*"&CR-J"^B,6+2+C!
M,6T:@#U*A+Q0=);SM5A%[%KVMA+&FG-_+C_[M$'?4FNO]LJD[.?O]BPVW.IE
MM95/NY6(2'QVR'SWFKN+MIM:%?*ZHA$(Y'L"M,&/AQ[VDG9#*+%HB"<):>G,
M9FJN B^5247"<$E:VP(BQV*PN9R9<81T@*@?QM11H9$FXSAMCF/=((_FR\^B
M2I&9_KK?A-&C#KUD^\>0C>((5A=TI$5'Q ,E[>@:1[6Z!I(U_T=H6@K1'Y'R
MY:[@R28%F=KB.37%V0 O ]&9G+5A3"3L(*/?1M=_?^R:10Z(*B.[0Z>C)([Z
MI&2!S9I^RHIBME^<Z1@=:STA#&J0X"PA%#_(N<<@67G7<(6I[<ILHT\YXOGD
MKIS;5TFE']8?VOFG<9..R6&=H&MWK:QH;66*=S['D]7A!PRC:E#64'B4C<J'
MN$A"JEO#U)XBE0!MC%U,P@MT@-'AMB!MR*,DC&"@WG<\'U?#%>"&WDLWYS^=
M,*,"Q>QS4N(RB-AVP\^B-G>"H._L'NC7PET^LY+=M=GYC=\X%5J'SZ&L@P9X
M\GNN(F/*6O(U9=XLE7YT2/4/TU*U1=@1 6H)%A!Z+"P*TCL-WM-+B!)W+OT,
MR22=R2K',!L7H)-'S9B_[5]9+//>W#..\FWJJMV%.C:P@#BJZD#^<Z,^>+&M
M^=K-SS^\>&?%$1??T3DS[6X8K/UHYZH<S)4S9_\E?[AZU?,&!G%0\]';9O-'
M.I?_OSY!O[M774$(W]RW FO2V.3A_^,?6-FOO[CQ<]*6JP=QMQ8;)FBO3/['
M20-^ [G+/: BD"Z?45^J!UI -#=>>@STRCIY!*&?W!62*<S(9T%JZMRT:ZL?
MU8ALJUCO3Z(& HKP)Y9;I=04M/&5M?TJ0W)(KY->Q8%1:ZW PI_O?T^G[^M>
MUP/ES^2,J8MLB;P8')-?!+@\;MH"HBX67IXK'1GDZXF&2\0SF3 5\).?87>K
M##U>C/^DFE-0H<+!VVEM>V)!0JN=A,J;+.<:A3)UV%[2UP[.I7#(8H:-"3U0
M5<%.O^5;^\5P-3R3<C1[2>#P'DO/#TN_:W1L=3B;LT-*"[3-V-N>L>F=T:(4
M[2VR?Q'(/^'7"-E*"X2*@ LA#OT+'U0^4"-+<B$.0&7.X5+RB+!IFKHJ;);3
M)<3_C;BWCV=ZC___UU$D,7)5KJ8D1VBG7!7:*B<J1ZM4BE@=22SM%+(R>X=<
M7^R44T[$*B'$"K-RL6$;E5-RG8E=U5%8WN]3S3M[;[[K]]?OC\_M^]?W>_O^
MR>UF]GJ^GJ_GX_YXO]ZOUU. 3L.M6D2EFSZ ]13P4)O^@ZHNM VEO%OM E]0
M>L.WA%-=+1X,D"=0;QRF;K\@)AJ=52\9.K^!-1P<6(6$@<&:"C]&EG#E6*5/
M'XB1$#+QIT6&&IP,IFZ3 %JAU&00S1=9J+OQC>04GPO*I=1E,+<:GCFJ(3VG
M? <>QP5VKZ:]$8[2?30QR'2=X?P$6U903T,+O0]G.*L97?V=.IKTL"YMVO.D
M9\WRBISJ&WY:<7:/+>^4/OKXJ'<^(#++_N\B5=FJ%0VWE_S^]N;DP1N^)W77
M/+Z7VG"WJW;CEH<_/T !ZX!&1CKN%Q%55Y75MNVR!#"9GC2%CR^B=(S@^\3,
M Y0D,89/3BU#@Z.SP^8\(EW8DY' U:6N@ZX5+Z)R.:;4%?0@*)E?MJ(?":V?
M%@+7W$J#_4%6,TL1ZK+NY:;&'N[C^306)@/32.3CX4.XGQG2*0$ NTS)EXBY
M!>%;!YNX%I^XJUB,,5<I6MZN/!E=MAY.DLZ91&.CI"7XL4S!Y/)<WI773 W-
M^XDDFQZUB!#[S("R*?Y\R$W-DKCJ(CWZSN<?Y-WMRJWO=I[36HO:?("/6G*J
MM3[0,<.U<W*GF%FR:> 7OQ5SPIU+WT?HI.ZT/:GUO1AN!,W]8 R8J9B$-TOP
M&403'T>E"25.O0)0>E$*I9@N;NH")ON16+,(3Z-7(TM5!1K6H?6K3>'@+@\0
M3L%I]T)Q?)M?1FC.L+_X9DD )GTM7'1O+#K1\ 7ST\QGH"&*CQT+$E=I3-XB
M2HJ=O1E[%\%I$#]0C!_SE:2.4^U ,]8]1 L"Y+60IPR?1[/Y- =:=JFM!Q\A
M#C4S;-IJ",O+1\O\LW 8^,P7 NDILAF;PRIQ\>U2K_T/2%+W&J V\IVTCVQY
M>>3XOH8_]<0F&U><I&;:7WC6^)PR*.&FJ-?MEL!4DF0<;[1;0EQ-B>J9M"E0
M?6[^1,."E^ZV,#/<GR_U-#JOX4"3T/%CE5]B:6_N[SWY9PX*46IJ 9\"'(#P
MB/$7V8;KE7VR5L=("-OAW5I'E&1<KYX1&5*W/?B$;Z)WJB).0%'7FMKM?"&7
MV86>:TV!^(.0\ZH>B2HZUN_6Z)9/P6]V.^O#+(<N3+;(R&>S\O1'8F/^E-Q;
M>9ZZ 52T+J*6SJO*VWPAC*(.Q"#KB):+J+-<JQ\/3,.+(',I<;90$ILH17>*
MTH3!?&;F 40?W'2]&HX@$'[Z9)&8R;&G-"RB>#,UE$RU&3%;WD2?N7R=N*3Q
M:MS5?Y8H3BY?N;W$3GC?XTVSIY.'Z]6!/1WGEWHN>]Z;<7*J-F/M?[IWT=F<
MI9I5N>O'L7BAMZ#8G[>(2N,:)6!7(3N&X^4A/P[1N4SQ-'[)$B*D::<X7Y]6
M8$S<Z":PDW^1Y R;G&3]JLG+DT^$_1)BP_\3OC^K:+F^:VI*!#N6,K-I^OC9
M8245UNODN,)I3-ISAC$K&=\S^1.(SDS FL'L'GPC76Y\?S?(EM[*?  G^3=R
M1]PMZ;J41K6I9_>-6)?W2G=&5^WU"Z2$Y7^AA\NCSX5>3M>;\L[J38B;+]BO
M>\//;JO+^OS\@6U1+U9>O-^M/C.\<>?>R/Q.0@OU^<3I[=MZK46"8I0Z 2$J
M[:B;8(*&;[HQ9HNH&$S!Z"*J@2D'P#DI.Y\;74(4[B/H,O-]7,48X93BT1,-
MJ^&V4<C2#9EUT9YEQJTP 0!D8<0.P^,P\P2<&&ES6\+0B1::YU$Q4N]8 P<(
MG<G0HRV;P:_$QS"%@.(_6 8U8+5I@YAFH*//F/::P;I#7-EV"M3JMC&$@COF
MQGHZ12O:T,J]L,X^D'C-74\TUMA59@=MN X%=-%60O[\F2BP*@MGYBNA^,0]
M(HV(#"W&CZDK5VZ^^?:P? EJR=\1O;;WEAKN/+1DJ2%EYC>E&W[;6.IL/=\U
M->S2G]]7+C]7LXJWM,%NU3Y'%.8V$0R8R^>:<URIKO CAB$26$\] :)YQ+P6
M!H][%=,TGTW5\NR:,U0/X75CJ1K>,A)2#PRWF0EU,MQ&2P(A'%=*R*SJH:UY
M$T_6I1X@+\/2?3:7?Q)>8J]W_P18Q8<=DBG>JS(2:JW-#[4,N&GX9"2W/D91
M'#NT<*D05R6F9V17 *28S;M&FM$/W2N&.658AVRF?49HTD&G[H_<2^LW^[-_
M7[8\PPU5^O!:VA-S[X/:PTL.+SM04_/35:V\F)X+$V57O*]>1'4>Z-S3(3;<
M89^%:ERU!&: OHI@^(6,FX=G,_+BF>/F"H&JV,V%J!B!(KNOBX'T*^A9IDXJ
MJ_=GC@YUZ8][348#&#+V; 5$$K043L\?'16&";Y5Y=7[N+HMV+('XWN/RX;*
M9*\X^E0/J%FCU]H(]2*<6'L6YSF,LV7.]FN\_O+^V*^O %Z1QR+*D.I;2[+9
MHKI?0+]P03+C@O8O"TL4K%OH/<1N'O#!5XV+ JL[%C;<7O:7PF-&.1U[-_+T
MZ9=;+O^6_JZ:OI(3/O%VC#5V2;9Z:S>*GV+B>("X]-;ZYQ\:]E-^%UR=-3%$
M?=^A)T#](=([=6M<PN0I25F1[&?-(#&][O/)4AO'NV7Z!EV.IVXYHB@/LM]T
M0RVU=HZ'RDV"+VEOQ52O5T>M[]^AMWOM22_&U)XP_T/;%E%X!CO$69"0%!9V
MGEGSC;C!*^=D_'9+/ ,^5'1P2#93['VY%>LY=OG3XSC_X'\>W8B=.%OZ:++%
M(>',UT3?AY5K# 'SBUXVY6GC(W]Y7;^SB,*I)\Z&5-@_"FDA'1Z-5SPY2DKX
M\,5Z]R_/KUXEG)"EC3//#^G:V:W-0(\4%'T259;]/O=^@!98^T#IP0K&[+8]
M&9<V\&=#6NKEF9S@$.]:[^.B)/GY^8_6"/N_;[->.><_?%/'I_ZZ?;45]#T!
M:5T(ND*NK"9-?"RJ34K\N.^O\)R#YU]]'.E-Y/36?AKA?7RP4K<#?Z_B07&2
MF[R<31,L,SGXV__KSE#K-QE^/]D8N4/K_!_'?J)=.M)5[7SY]1*AWDE,]YPP
M4>: F.AI$*E.Z4CK ] T']H_Q804/&DB3I$3I@V8JE^$;X> ;(Y9-'XIS3R4
MZM_0P!G^VB><Z;R2R->;./W.HS"AICY=3(G=Y8*$[.YY=0:(=/HRKJ"K2FD;
MJ/M5SW[L+MCX;(Y\T O.*Z(YJMHH^';"Y5K_J!I?3#<ZU:-,!R0K<'?ZFUH8
MI5++RR[?/%+2HILSO'G_:CNMUAD2K>"LC>$XLR%\9MO.^S"'I_%;!M2=Z!2?
MG=)D0**X!RZBND1&":UH/3@B9+@M$>0%#B64TI+Z,HO315DT7F68![O:,C9X
M_VB3^U#"F3>;6'NY/W_FBN]Z H; .;09LKE0\09>IG2B.$DRY3KW$6W0OXM@
M3G'UAP ^0Q@EL-C4*-GN+5W/L870V<A!R5L.YJQ&DG(2T"94,]C_+AP1^!C:
M7R[#KIP.QP.&E-8=+?W(&OP,]NHWC4EIKH)L1#U<M!M]6;10AQ[5S[&,$1+R
M[T'G%E%&R$\<*U!]CRRKBR $HG?CM(;/0+@J*<. FU;_&3FRWJ,,TS!*R++8
MGG!NEFNF7J_NY+*6S6*:,;.=$D(Z42>!FXIOQLCI$JZP&2LD'X2S$^Y3V))4
M(LR0X/-]8M%9:C,AY50"TYAZ"#2H!KO^'12?8=ZEU%$WU^AQE_;*)GQY?\")
MX01#%!D)43T"SF?1C-3#&'84CV&A<=+S'>0Q5UEB#UXW1/V*LQZ.JIR>QUO@
M5M">_WAT$@B6*#*AC#HH5=3S!YS9A3%JVRT%4,B>(9HQ$'76#&<)JNF2=FVT
M*07?'0??G-,8I7)\#'J<V1.^5%7!C9J[2ES2-+<,;N93S\/V$I%PKMO&5GFF
M(A+LZ\18L9+H!E0O.%GRO"F@=JL$[I6]V$#.\B".FV^)_G&46Q):%QS2/^<
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
MO,\0B448M>;[-TWUE'"%@.*OX39S,7 -8TV-A=@*-#P#^HLWE4/:6%.*A4P
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
ME?8R'*UQ@N*F112:*V9J!LK,PUG *8^0M7"=T@?V5Q!5I6KSXY3,[LDUS1G
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
M I_ID3CD:M*3G )1-Q+&-FS7DA%YV.QP*]4U<X$%FGY.LZ@(RZC^\':)'$.
M@$PD29(<%096,B5S]' G.%E&6-,CX>I,8W]L-Q:?>2:!;9N'N<UVMIAG3.<+
M#4Z/#WT?OW/UC\,7WPH?--9<Y9N=6?',P;00D.+1GPX=WUU#NG+T]J:*A\)/
M%O%7\E5UA3$6+/C2DX'9W4-/+-OW??O]9IUS+-);>S/G:(;#L7?,_S1&?EF\
MJJG-5+F#&J*Z?0;DRHW!'Q=Y+M, , />B)^-%@<LH@S>4D- OYOUU!"X4:='
M'Q, C\GF5GU4V&QN@0Q*P2C%95#>S!3KD>2 ?W_\!*D'9P>GUTUCHL'YU+;-
MM<0%H%N40UL"]RE]U>\8+++<26D-,Q4/5;>YXE+ C+I&0LQ4^PRIUU.">;15
M*@8'0\&*ISKQ=& 5SA7!P''8G)-#:D=J8,MP6]Q#9.]P6]0Z"NVRVN@L9GD3
M(Z/,=GC.'6/XZ2 *.(*+/Z9#L17KWVU.C.\XL/=Y[^D+K##.].;E[%\\)AH<
MW]TK8FX<L_TJ/K7W13?J':63^:]2L8C2S%Z"NHO1%-6#^;'[ZV,*!OW6 ']1
MGM.@WPD8@D)E/>D^_K)6L@4%KTB&#SJD(Z>@3.G^5#O([N,"/D^]+F9R QP-
M!G<6LQ$[2=,:M7,,SJ4?)P#$STVBU*/<!M%5FK5ZB&O,C9D3SBO\TA0IJES<
M:NH&U=_496!K-P<#/SK7MEOY,^(%^Z+Y^OY2?[H[-YU=Y@QR6+*)GT1\-?;-
M-X;AJ\IIK[G\")![3?XY_I46GVV1P"G:@1EX;'MUYU+#Y;;O#2\O->I<>G'Y
M3,"!\9>-H9U;6O8T\$QJH*TW/(\;G? YKVN09W"P<^U?J;JO O_OOZVOW;C1
MR?OQD0/';Q>8'KZXU^$JZGUAAU7QV5M;=F5\ST;]M&;_/ATMC3K[MEK_47_A
M/YPH15/DS;=H/J;3#2 [/5W'+2.1Q_"R._T[*U[')C@^H$L4+2],\U^^"UF]
MZ?W)5;JTT9A5?D=))0G:I[\'*VQ!:T8*S@+9VZS*^E_M?5E44UNW9A 5%3 T
M @)"5$!4Q-B *(1$5$0.8A0$!(2HB#018@,2)20J39 ($5$YPH$HK;11"8T(
M!$B HQP$0B?A0#H;>G84PCZDX<915?^X#_^M456CZJT>YLL>^V&NN=;ZYO>-
MM=:<)#X-::N<US@\S0O,!VY,M?M9SCS'1B#CQ;"6P?KY5%%C4.L!WAHBDG"A
M(8/M![NGEA*U#%%W+PL/-.[K:[?O2)I=B',XU]OT6?("QJC8%7IMUD#U^F@S
MY/L?N:B$Q6Y3X9OY98@.&.NCU)[5C(J;KOWS?XQ29]Q1IZL;^XZ&+>[SY94T
MU3QS.SWH<ZT;BR\Z'5%I/;OE#_-')TO^41*457%@OJ@+U@)[2VO&K ;=VL<.
MQDN:Y>4$:\"@(U<7#!'K=PCL'B(\@1]#@I@V*B5P"Q#-9+O]$[$;82*@&70!
M'X=8-&V9:WZX/2EY6F$T:;J["OC(FZI]YMU'T*ML 3S@]VAJRCB,J<B?ZTHV
M@;>%W>!.*HLT["8I S7S\)]&YV.9ZI,PE>@Y+N#"I\) @W/8D@9KJ1,^I 6E
M81-W<9J<N. 8CM(!:4[B514Y,[-ER%<J\D,3=YJ>5I[SF\S:71A4-I%9 XP.
MA]L']QL,VCVK76-Q_]O@Y,#7^\*UHJTG"I-<7+6?]CX_L>V'ZZ;XO?5U.\O7
MO;[@15EUX;B3]\[/FQ]=NX:G?_-O93*4?H$6O#;XR)!D/X@J AT$RLF;0^XB
M=A]8AKRQ9-&2 ZVH+)I:@Y48+4D!#5Z!V<)O---W] \11: :7ZTUEJD*;R<E
MVU\U:I#4:]:F5,/7@_"C5';@?@"=:$LO)?'CN8KGMZ6.BH% 0ZHHC]B3-13/
MY+_DU6Q[7BIS;Q!')@IS8MN]'Q/<ZXPL4Q?0H$OE%0YC"F?,'?E #P7"]OJ/
M[_/]&S:]Y0!MT\T_5:0^RY"UJQ/E9?J)\C=%FI&Q.ZJW1UUIK WP=K<?NUQ#
M.^U^J, @-4B3G<ZR_DR>GC#+L[GWNVI!K=;>+<'>6VH>K;\]W*!";7SZ1?O1
M'8U<JW^ZE>-]*%L-'@6&)"6@@=1S?!E2M4@AKL<K2%R2)$2LUD8'=ZX<V]YK
M2U<'+5O7"D<-6HVH+9JXHV_ _%<RKUZ9K9CJS"$X #J*2:D 12:NQI^7N;\5
M'V\4?L9%O9^O_[X,"9L;9@IJFY<AW$[)[_(Z)I;V&8V1YS7I!LAPH+/8LY7'
MR&3-4?:&$RWDN41]$,I7FY[CZY9,\2"1B C^Z/&?+3PH$HZ'"M78))W)0&UR
MVU)7#:6RYKU2QM>4K#1Z_$IM/G=HS\[;N1=VI#:_V.U[XN]U.U>'J6!^WZ#Y
MY)^F.9O%9P>;0ZZ5-C_J> E9<>VXRY$]^Y^-O[.5_5!N>A<EZZ?QWE [>%Q_
M/ISE#[_G9_)=F2W\"9YDH5T[.D72M$7,(.X$J-,\Z:'/((F-TFL(#@O!"4?B
M#-P'$<%XFCHS!+<>3!CO46:P ,+Y3/:25[_](CGB*3-&88;??P:\Q]<DM639
M41O"@*HS0_,/&)WH9!@4QJ*(J.ML_]JF-H#8?UV$U@1K#]<.FMW[FC;XTQL8
M+*WIVE+G%EQ_HC!9]0WE;%^(%)U."K/[7!2+96FR/2ANR?EI89O?;?]K\[.#
M12DN:1YI);NN'EY?,,2IGM$-[)NNCH-Z]U576'K4N'6ASG+@U@N.]A+.T>39
M"MS5@EQN; CJ%OYK:+)&C. <M77N,XJ?>2]Z[C-+L4X-<&@?TP#CI<?!;7V2
M.7DC8<LK4/V\>)K+9,^EZB-UP3>D]31!'$Z(2B.$";8-$CQ%*B\G[C@.UHI(
MR4B37KKYN_M];.(6#F+/VVJ:E70ML1-3%<*>@Q+'E+0:RB8-QY\&+8!P6!I3
M0[%E@O?:)<VVXLHL*G[,>*!!.[]-T&TP'&ZZ2GR@"J"C.40X?E% IA"B"_&Q
M?#1[&;*)8-]CVB%%G1DHERE%V5H#LLT+Z/BN\R//MF^C7#MHU7ACO<KFGRTJ
M3V@G'XJV5C'DI",#E=56)O!SG 6K+J,?[@X^U:^;:M[7<:K7O*RI>]SAD33F
M:_ZFP2VVT[6K^F.;7<9-C?>(=WK4'S$X/HF,>=,Q/:+$SNWR)M3%94A2TV8P
M()_@)":SX)]C)!>!Q59?6XS.U%LPMI4$FZ</=W1@&.N?YLN<Q:& 5)G,V:A-
M")QH"%C_4NC[$OCTG(])@*VKYAV*PNG@DQR8?7/@MII[@)I2$G4H8<8#8$['
M7)>:$J+[%=H$>W!1B \!BPME(0V@&%#@=$!6RP&F-L%+K':ROQ(734]>4GO(
M.\^1W;XII#B584QB6)G/_)8AR?.C#UY"B)]ZG3= SOP7YO,U<Z9P&6(YH62C
M2@KY=E&*7H9,;2!<I?=S96_E#.87.8J?3I($*K?P,D1^B9KZ1&7IV;_*;>U[
ML8N]:N,'Q]6G#LT;.MY97YSB_-\Z6)680]H%=S>7K8 >6?,%%M23QA?>-;),
MOA]S5V7S[$=^H@8/#ZTOWG5G]_H3.S]C;%=>">!MO>_*NJSRX:,HYM3UAZ(L
MA0/!0LD)^;PV&F@=(],S<P9'I&K$'F:->7W(C)[4:#QW#?@&6%J&',D6+$[S
M0LJ(W<B5[_NCH2:5U6*6(+>D(%2']P&F5(9 9D)#R$T)!CKIX7)YB'>Y;XY9
M3B);"N/'FRPP%#C?KM]<W)U*3AAI?C3UVA>6Y!+8 (.2'_2Q]Y__<\SN5Z'H
M:=5VCXDY2_*L+;W&O<#9--O\]&:U,+4'!(?HTDDCO<KW!>>GLHYY5TW6V];D
MAR'+"EF$MXX/Z]-R-M!O!YO\8.WW=?QKK_7G%'35\P,';!/$!V;>6EW]\^IE
M$61ONUK779?1[M/VCZS^:>Y%788.QZ#E3(5J. 9 XY0+C8.TE:T!9X0P'>(H
MJF95XW<V3'M<L16PZ&Y53K$?*HVH0C@+9@CCPF1VXF+A')MDC*>T8.W(5R,1
MF J"<<3NGVR_ N3*QMXH3:OS[P$7R2V KH2QJ#%9H/RU4L2IELL"Y"^7(1%4
MKNVONM C-UD\G0B$5_ZX!*9EBTJN9S:3$DVMP8@@H3OL/+!I#E#_K0YH>]8P
MIB&V(Y.3HR@S,/:=L><W28+14S+5)1-EP#)8'7Y(8Z-OCPE':M:6UB34)Y9A
M5=T>W[R:E=ZG[QDKSUW<.3AU^XO\]T^/CYF/I97%G.EGS&S]-'5F %=A,XIL
M'\-VCDQ-"*NKJABUJ87OZNO?Y3PVCL6&IG^MJWO*V;[5^['/L55E_W@"B\WP
MI#%#>2KI"@ZT(E)>!H#%BG7:HFYNAN0B6"S"/<Q5'9C;(J:QW?=+BN752!."
M/I@MW3/F'%N&O_])*JBA <7"L2K DT6#1HXY.K#N="<1;,N'VX*%FJ:S,TH5
MC>*7PM8;"#%)I"L5^X6P5OH#YB9FL+N=:/X.?28 H A<DA">HFYM_/OF> &9
M[08C]X'Q@HY[B=VI"G."/<!K+YLC-VT6\^XW["C QY_NWU6^*]IM#CK)W?V@
MQ*].;1(E^?1X5UJAO#!(_H=UVS!3>A9U23]I=;W!E2G2(VO-MX[-[WXBXE<P
M6M&[](O/37(#BT/"7DUP$W,4-%)$1.S%N)#K>ETY"T^_N-KF?,WY:Q<PZA=X
MU/P&-^#P#Z=HXWPG\Y1)] _-%_C*GVS2&VH[;3B[A;>B:?<D2:EA0*MVJO20
MHHOT!DXI%@^UXF"$JW(:3AFF/?)"A)?T8,!4H/F@12,8(+!V<*T#:\5&0EX'
M=RB!8"N@DIM6O@,CQ-HR1,W2V$-DNCQG&8+-@4M,Y'\0=RFZKX&Q+;RWY [,
M1L40\A#H(K4B=M",B)9.K_!J$G1O-3V1I$'PU1QK%._W&-@,X)*):GB7DP/5
M3"[5HQ8D"1O=6KO"Q)8G075^ZBVX46"8T28(K*_@1L?N.6O6C(,_K'6T97[S
MESV3Y8:G#$\8<K#UN^P3FS)VEQ4[EXYR S'<L!N!A[.>CJ;1K!L,%I_5: AG
MA9R/L>]/1,YN2134/IOD'@HPQ<<K/$@M>G2">K#4:)())1B*L]W +TI"O@P)
MQXQDM!IEIKT4$^.%O]HJ)GT<DHS*\U$"77',@]U15B.OK O$W8F>;F+O1\>N
MA2TE/7TU,FFO'C ><\!@'Y% " 1M!6@MF:/\-9-?R*TLNPF=R0$,)%_%O"3B
M6MGE^D';WZO1231U(D31&[@)A.<35O1&_2ESTD\B&LI. -L>"*W@,-"7,5S1
M<+%4=EJ\K3&V>-)^<CSS&H1T4HUMI#-Y.K2K? );-NJ/OAU1Z+CP=M)'_]G;
MHWI=_?K6V]\]XZZ-M'X<)GJ0EUH9P3JXOZTQ>(CA%COEN%ODTW>A?T$=.S6B
MB<2.A-+IY?.UM>ZG9C]Q7/5CLR-L*V=6OT3L;?#&A-?866O5)3/%.5)?_&Z8
MONR<O J%-5&7Q(IA:9%(+<7?8R:Y(XIUWXL)/GV,@"#)'L"R&:Y#,.]KVBUS
M[&U:A19>%.L*H?%*8#%!LY . #W%!J,.1DH%,6RK&1>,&),\MV*<:/&.\E)>
MSL@Q"Y"7D*Y"N;W(35B,%L("0$NJY,_G&]45ZU)#Q+KN@.2Y,E$M &36P28U
MZ$/F:IDQD(;2F6BR BE\YOK R;$=_<3-6)J&C;M+:Z[- '$?/@,-YEQ;Q&@N
MC% @T&DS+[%/4M0.F[KH;JWQ>AONV$O]C#Q66?@MOZCZ]C)[-W.CP*<F7WJ:
M\DM./CHI/C=</N2QRV-#<L+52+."9+JQFHOQT_ZOONCC'@>#+WY\_?'UEB>/
MG.A?8<(6 -9.I]!J8V9BI%[$%K_%F0R@3^(@?Z&D>[SCXD0E!0B GT(/,_G+
MD.F? M[*\*9=_8K5A,T#MN_=YG3!0:NI;FU"F'@9DCJ? ,R^KPC$0ODX:+A1
M>9/& =;2J]ZYF>H 2_>!7=^PV8Z_?1PYS:B[_&Q;[N"/#>]JG[39%X@-MZ0;
M=V8=_$IUL$BQTTA1*73><%KEO]M*CRT76 @]U9673=$;6]0V/[J9:__01SL8
MF&KQBZQ<FJ4)X.L_8Q^[77? ZF>99JXOBMP]\'CV^\S4Y<B5BV<^V,3HWLYS
M?7P[X>'8Q>[;SNN\S#Z5#):=LKTX779$;^<1O;"IT$\VDYZ10[<(0SYW]AO5
MW=%KS"X[_M3U3,G,JT^%.[TLC^=[WRB:["OK_*L\YW&]_^]!1SB+O'=]Y>QZ
MQG56Z2=KZX:94P<O[3E2GT!9D=V6M#ITJS_--BB1:ZYN:.4FIQ3?NZ!9<"S,
M, (N-]+AQF;[7G7[3+,\4'GU>QUC%/=5K[HNZV^5E0^?UCJ;9SV\4.SY;-\W
M-V[_G1]2N_+B0S83TK0?F>]C;6-WGLW+?IR*##'U@0>Y.NRP3V?NV@*[E2])
MZ77MC'Z_A^?<1SM-]CEP6M/#RK<\K]^]W)KP+%/'V492=J/79@)G(Y'TN:WX
M\W6G=<.^#\;VJTO@\Q1-U_+ I8^#"_-3O\]=31UE^, N-R9H:WZMS=ETW_A5
M[=X4H765\[L:^Z]5;YPQB#Z*9X[(T,ENVU>C&]_D?U_FV6Q]1VM=<"\J_YRS
MSOW@QZ>&QSU3?9U["COM>[Y6^U;ZGPIKW[W;]4==6UOQQNIX).5B=&PPZ7KP
MRJ&E&^<M4K_4O/YP_7(F5JO>S2'S06&-6Y6&=52ZO75'^KJ_S$\,'#%9WQP.
M+2VB7<DJ'WPSC"YIPZ[T2QB\QJ!J%M1>@AWP/Q?\]&O:<':GJV_.V<@,HEQ/
MGY!"0\@?IU"KHG?:?BPTW!YP]F%CQI.@0V?J$XHW?O)Y?-+BR).";R_7='7F
M?#B23>Q[VC'B=_I)7,.%KZ?TSI^?Z/NCI.W'^TWZ-$#4?,=1WE16@+=B&1TO
M5,O:PN00#A6<&VL=TG*+V-\1@PO2:[U=\Z-3(YXX;/:\]T?!NO%JI9(:BOJ'
M$8<YQ>AGO*]VKG_3OZL"5_[]1*&K]Z&*2'X6U^NGV7$5042!FGMEJ2@RY<93
MWP^_%=ZI>DQC/"ST*'L2$EMLE,8H[7A:^#'? U'_X\?HJ"=+,.'Y=&?4]M8_
MA +[Z_G';2:M;/Z8:'\8YCK\ 1GN\?T;0<;=9%+,HJE,2 RX7K\>;8443EXT
M\.RS1C@6^8<M_9Y8$+HZ/\0T]]D09>VSHUHYL,[=OGM:3OC#R,1U?;MP-EWP
MUL!-?5$SQX[5/TU\%E_HYQONNIKPA%F;U'ZPDJ._N[?@P^;CM]9!(O+?YY5Z
M6;F[GFH,N]F?ZFOKW>!?IG[C;,0EB]NLIW[N#L,!#KJ;MNFO7W_PSMJ^XIU[
M&C7VG\EW>,=)62J/..43DW#>*_NW(:O6EWK:7LV!*A=<#I^Z?A=BGM&L>GW<
MWJ>#5$V:KGY%Y.0>D*<BW,-$5K@U;=(=Q$&%@;PX,B(2@4)6*6521=$](%-D
MP-K18+SJ+[_*/[+T!OID'NZ7'&^<J][^(L!P&N/V="[H'67ZX\X[C3.<V;F(
MR+&*VELC@]-C.S]LZPOSK=;;,%.=#[NUP\K9HO#QGFAEH@1CV[QQ16"F,Z?!
MJ>@W,8)[I;;H7/A25+?J/X]L:OR>5@^\9^R[M^M8QY.G1^/3SQ4+Z'=1 I/,
MUAU\YCIG@>OWM$F<AK.@8AT*ZG;3I-\@3^BN'24H;&QY5W,_R('+R#N7]SS@
M2LH.W;J\>W_D@<8M$W%%D^GXD,/Q9WL9[%Z;N%.\8YR7_5$Y^N:/#\['[5MR
ML*U_S1&E'34*D[QM"TU/I6AY7U.ZJ?B;^=9G1E7,$UC06YG#JI+":CG9&#.X
M\ 0L$^+6R=2!$'9LMR&XO^W.L7IT\K0-!2N=6T];AV]+\0OPQ7]J%2Q \OS]
MD]9<R!J:/Y4"^<=!LE5.)6Y0M##?+K:2AEWX#7=J959*\CL&RW9]VQ_]X65V
MH%B?7CH9H]0H*0BO2C06%Q(93=7%9W@-V(XL5-74,FK>,6.Q!_-KDC9@<,N0
M1'> /5%KOU^&!$YFV7[]$5Y;?Q1T8Q6[-0P$I>89%8Z2)1>JZ_IK'.@CP0\J
M-SB4GG@U6S%^]K2:39,F4!I><V>::-IK-A0ULS<JP,[/W<S=J(:6;[:_*#WX
M55SFC#?7[\3<UL\N.[ES,4':NZ5O7X)!P(\1C-+CMR,M2-U:<0CW2J/I#C++
M;P/13!K\UXVCUV]%ORQ>AH0Z#K ]&GQT&UENB*OBC[./?X/5Y]T]F(,1,.\V
M.)7Z3F4MQC? *Z:R"-><@RHF%2:]MB:7/CGX%M8QW)2LHA7;&<RHR\)2+J[L
M_4>WR[QW)KW3YSOL5\F]E<V 3PMU)$8BE[\AG!$V6@KSB'_[,5O<+Q,.B%&L
M")@4)8@8:NE6QY-;2Y<BJU^%UPNG.& *+P!;,KO^P<NN\#,SBP'F50Z*DC.'
M-SVKXJ/5P#1.>P>;:-R+< XI.N\4<Q%7.6$42=<L''T57?N^-DW!B4J:U=ZE
M".C_+7--Y.YU?VK\B.S.$,2PWC&F1DUQ*T&/ +.S ZO?E85YX+%'(O9[#[(*
MR+[]C)_%<8]_>MT.<O53A/I]J3]^[*[+QD!)"N0+P84/7PVVCG&&?K4K688\
MX+].+WI#9=N;IE=8/)DS8ID/7@_WMMOK]\'\1/J[VK0]05X/(7>MG2N4X@#V
MP&8&Y2(VB"=8TR?LCW=/5^SW!R34LC!N2*:J7YM$W5AJ17%#[^QM^IA[;$?-
ML(>*M,#+)&>#RI\!>+66S#%8+5"XF&2C/J?A9[Z7"][ZZ<RI9%A%U3[JNOIZ
M_.?PAR+V,\Y,;&A^];F*OT(WI^U9<T"WA:A'\:H?R@,4%/WW<1?JO6;KLD[]
M4=_V[5F2KNGSZ!(*IN;OL-YLO,:M_2<EI9>HBYCW[HV.&U2ZP=A6HB&0FLR1
M60GD!BP_O[\654_VV%2@7/K:V \VH0\R^F8J^#]S-UY*_#K<*$RQO8+TTQO_
M?]\(<.'G]WNH*S0R:;T"2>Q!,4CD6<0)XA8BISZF908NW&6W]+2PFWRI!H3]
M>HZ#Q[:$L++"PQX%A-WX4(S/]+#_.V/2[OOI.GVZ%B-M]!+*J?>P*1:8$I02
M'.+;M: FA./B#IG%,D2;$"#6ZA1#V9U"UX:]2BR-+."F*.%HMD9?]1@8+;CF
M3$Y [-'_$KIT0_Y\+G+XZS/T([1,-X1_4^9B"L]L1QEN Z-H)@:2YV1)2$9;
M+FP9DA03+^)@,4!FF]@4MJXX/J-MXK8!VV,9HF? 0@&YL!6U[&'C]AN@M_MY
M\Y(E;6<(\88?J65/$\0/[/MM$-:V##&.5.B!.%':2ZDKB))<R.S(BJN=_BJ
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
MD7PR6@:FR(R.(,;;-J#91W:( >DFL%;_+IIP-09VALKD.I<XQ*,37C\ZW8<
MY>@T#E?A4H1@29:=,%(N*^P5B(0 ;>@HH'C46W*OMP1[HQ$_)#8L01%?<_WF
M;_B$06>7[MBE.[X+[W]+X/Q#-5BP!Q:;+J67CYB^SE0UBN@BGJ-D>VH5BNE&
M@(03NBOB-)T;; "USU184E2+\ ^4;XQRI<M0<579&9#<TQ@6OL]"M4+UT4.!
MX@P!62U%S)U'.[(B%MP(&H4(,:77FHI:RBV%>)[]"SJFR-"+1VT!43E4?E0S
MXV13N>2D(G& 'LDR7L0:(01=$6_4VPBH(&H\K _QV]4(U99S5<*ZVU9;BG54
M70?Q9(WYR$\\79UN<A<EC*7/H*+H9Z8B)B_ K5:<!#FWZ$$H)TBN@9NX9&AT
M'(*/A!1N3J'YNK[)<WDR]SP=_,V]HLL41(#CQ?]=,;0L-QDZ"^N3"E&$@LZC
M\"G&,2@P7*+/P">0D4>B(KERP2^@YQ(9JNZ="5?!-*J-=;>MMA1K5!'/T)]R
MF9.J7KXN@22!R(DITIQ=D_E<Y%>>$"^$RV4R])Z4IK@!*Z+,MR'E.M*Y^PJ,
MIX0U?%$:*+.<;'P'M(0RHL0UY:R]@X,P)PBJ%>!@#SNCJ\!FKC;6W;;:4JQQ
M1;B\%\BQY/('=$OO^8LTM'^REM.?H>TIJZ.C*#?$IRO9D\>M!CBIM@X?TFE(
M;-#B5F5?<FZP/[:_ 4V"+@(%]X/2!7HZ@.K/*:C[IY$^!&@3;A=))Y+JWIM
M7&2G4.O[F2DBC3F3XA;PPQ]:>%"I]K<GJ[79@^S2Z;MT^C-7XO1-O)OSAP[C
MDM%J2XE&LG&52Y9JC=A@K4T6 ?ZZW,:CS/,"(L]CX;2QBTR"OX'MIJEP#N O
ME/%(<^.59RP0I&]D7Q<H4(A:4KOX28GPDC7A2RYP()X<<Q7Y0P@?=J_@W@AG
M;*VR>B6,57FQ=B:+8T24P13(4/2"G-ZW1P*02HH(=_%N:P;\EJ+5D#?T\:K/
M??JSD^79HHTLM59FA3=0W"RH=(UBX3'6MK 0+!L9K<B88A6D);206HB;+<Z
MS5-D!ARZ'U$A&=>>Q]K^F'A+K6E+8;WQ2'=+5^4MOJ4Z4\71\<2@UJHA]X&7
MB<B>_JAW0;.U$. )-=5R"A3E*3XNCJV;0EE"FDD]!WPZF^B@)?D]$D?2_8LX
MN R@G\C2!]]!IQ4WA8J!FCP\.#X5:B?>OK%X.SW\X44S.+C%FP'5;]R@XS\Y
MJK'CP^.3EY5SIRNS/-+.Z;3)1I)'M^SHX!1;\4=M7G)<[4&G81L!^(;_K6PW
M!IV=C_ANL,*J!"B/EV:W+-\)UE4X35#^-\/YPO=<AGS)ZSJ>5W<GB/!?]3H.
M"V3<9%?HQEO8P)<<@RNJV&*7F<^$--D%MX[5Z^6J] ;_*5$%O L>^S?YRP?<
MUEW#;4M'MNJX'CJVHH^-'NF!YWI,?$LK6;/W[SMV"8FOL=AP*TTOYZ]<Z'*1
MVPV<BW):5B:S0;,99FS[]T&[0=_M$;[L@[X3Y']02P,$%     @ &8!_5N?8
M/I0+!   HQ(   H   !E>#,R+3$N:'1M[5AM;^)&$/Z.Q'^8(EV42+Q33G?@
M0P),&JM<0.!6S<?%7L/VEEUGO;[@_OK.VAA(0G3*E;2<U'P(L7=VYIGGF=F=
M8-VXG\>]8L&Z&?5M_ 3S8[F..Q[UK%KVB:NU[;(UF-AW,'?OQJ-/I4 *W8%&
M/=3@LC6-X)8^P$RNB2AG+\HPIXH%)=R(6Z>OW=>%-5%+)CJ IJ6>=3VY=0]]
M5 *R9CSI?,M+:ANQOV@6M-2[$(LH[%HUXQ"SG)X;OM,BZX*F&UTAG"WQA6++
MU6G!#GJC/VZ<@>,6"ZUFM6'5!F^:@$>%INK<R^%M,6^]:T5$%$BU[D <AE1Y
M)**I($.J- N81[0SN2T69 !3Q83'0L)AM*%>K-E7"I, 3:BR!C/,>!JK*"9"
M@Y;0^ "_5>?5817#>YI) 8U6NU[.#$D$?5^&FOIPN">W_%A_#S+XT8K@6X3J
M%2T6YD0MB*!19;+A-(&^IS%3:-;KS1\MW7^CYO^,(ZS!9/N2"9\:E_5JFXE3
M)C*7G/*D6$#5 %6",%:AC- %2N/)=<@3)I;PP/3JI;(&K&BRK>CPQ8I.G;]<
M 65PRI!628R9J@@I, URI.N(\.&:"8(+^'[;@\;--:<;MN 81?+81([ ,;(+
M8AX(QQ#"J\*E 7+!_?M8=H>8(!')A4J?KLJPHHHN$JP7T__(BEX173;)F$T+
M&J5XUPE\$?*!4W])4]#0%R)&,#,:2H4F JZQ!Y#@RJ]YYMM(D-.<4** 8JH^
MV-2CZP7FT&J4D8MF\Q'$S&>.$'6*.4\R91BJE ICS!6]CYFB:ZR25+N]1)?D
M"C!JHWWI7^V$0#85T\;#:..MB%C27(W&Q];/*<DF]]28"=/2*8L86&C"4)MB
M@8ET=9MT0)A"8*&BD8%0QEU .,?Z1@F,4K@0(J8H8RS8*8@>?9;Z-D'1*N99
M!A(/$)+I^)C$ZOE.'L>/!;<_&(]@.!J/Y]/^T+G]Y5.I7DJ?IWW;SI]?G<,#
M\_7*F-;?=6$A%?9-Q9.<DS!"0/E?I70JM=S9ZP-\-6W@$9X?25J&I>V,:[GV
M=P-NU]^=DG,;*ZR3H?I,E+?*^ZBUD\&U3X-ZQ_)":BWQDEMPXGV!1K6-7B+)
MF7_2P=#IU:):!MPF@E$.@RI,+E1DCH*!8E18-:=WF"7^FIV+W&_85O]$S]-6
MGE$E@_)<FO]E^8]@[::&#,WCT6$_4CP;(HY+5DM/[][Y7S.(\*=*!=.BW._
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
M*#(,)!<N*%TR3EN?IGBN/D?1V1K<[[&>ZBR?/P((F:?.J!(IG$I9%(YNF/
M'0[)C"8NSU!0)(."!?L3"O_D)S?A#P/!L@WD)VLFP!";"2:U5QKWK\0PP=,D
MV#=!RR#-1ZG\L)<GS1AE'T.SKY5F( ^L=RJ+FO4:;6Y7G'G1F/8UU&%@@\%"
MUUD]*-5W9FV(LC89E>/#'8K4/;SN,_>= &$"UQB,E&8@#V%$FE_-I@3()1?Q
M](H_"!6R_F>IT' U*D3'C=V#P^_E,=4$K+:W\"WJNJ/=5NO[78T^),C8YROT
M7\EH"SR/%'A<C77?J T>+I"$P\X$'/ P4II*:'%U8T''G%@Q,0Z5M7D>P!,;
MVNUC9Z/#TOBH]/B5LD P((L,Q2'6(=0%1W5*]1<9'YJ>&.MZ!TY-%3E6:2-D
M5>/&UU%.5!WL)?U&26R)\B2%/#<P(]A*-)"+6*!_%58G(OUU-!KM=I6++]0R
M:!?TY'60'_>?B[=^LBYD,-D;?)&J;O"3]3LFRV[XL;D\JYLX],I.II[&GZR;
M\1#>WQ9@8]D_6=AX1T[U>8 3V,R==>N[*//)', _=(ZEB7^1F/ %TTZ"YE)Y
M7BHXA+61^#^[F,XB!NC=N R\,0M1&2!?>9%#?-FY%F;#GE^?3+VD7)X=*&\\
M*OJ9TQ=Y-H,J6@]4SD@NNC6$-<?Z O_2\8T(0)V37GYK$'N1.X1MZ1;T-(9G
M0])3BBHC%NF&S7$ E$C7%NJ&MZY#H76ZJH3:8N09 NQ^\DJ.X9 A10IJ!3CK
MU*U:<%T509-[$KW*X;8Z<WLCHST!,V#.(IJVMW#5+ERO2V=+:OB94ZHT*PW!
M0:=B,D8V/2T#0"*(@CA)?H"=&2P G0:GSL_"<0CFB83?.'TVW W8M3F58HBP
MCZ,ZLQSV@Q"[M:,Q10Y^,HN2HZM1G_M6QPT<WH.;M)/7#7.AK]R_=47@JW,!
MD123!RK^X%:?W4HK)@VUW]Z2X>[6%-LY?,CE^;BJWA$.N>UV75L-+QN$'H:!
M[9)UEM1U"UR/CED+#P!A#KH"=$FJC>7%KA-22HN:<PK'#^Y<&TD$0]'#TBXN
M)?_@#3!<&%LW]NTE<)B1WR_,BI0%EIQ?48ZG3'C(LV8!=#5<,H<7M@"> VO>
M_5>>N'=45HR3'KG)*&H5(JZ3JX +L(@]XM/A'AOK!UEI$X0.CT;8-2A[5"(/
MO#'3 G<3'N*ANCJU"P'_&'F#X? )4>AKF+@?KTL>LKV%;(*Y,61 48H/U3O4
MD0BP#[IAG\Y6K'8::$Y='$*JR9AERTPJ%\TA=TFBP*,I=8]8-4-.H*8%BQ$[
M(%#LR*-IQJ-XF2R6I)RI@_D0L(42 6CSQAE&=SC^PO1!$9WE^S'& \ @TAI^
M.#J090.UI5)F6*:?11=%A:H428^ RR,5390_QT\SMU@623I$(;O:( C?3PJV
MS,\U'$0F7$#HJE)(B2P,R$CX\XC\WQT!E(1I=I-U^N=.HW[SN6:U!VX8B Y^
M_/37^9_X[^?VQ_/3&_GC1Q'<?*9A_'[Q";[;Q:H\WS * 9Z:SBLUUI#>)^ C
MG](,6(0Y1,&XPS&GS<)Z3#50?$#+#9 WP[C'!':XDF$08)=C2B*PK_R9>8/
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
MBH-"5WT?OJ[AAVZ,*J=20#&=#>#CQ%AL<\ E]FJH4V+]43_54Q,=U93[*--
M;D!L@"0CQT^2""C=91.0>;,&HUU5Z<"D.].T0OODJH(_604*;H5*#2ZP-7V&
M].;+D'Y\<'B\*-J73.P5*1BA)-!A\(P"90/,_P&6NX9_]_>^SXTL+958!HQ6
M"90&A3-0.(!?^P_AL'5H<%B)I:T4#L\4! ,G$.CR-1"KPJI5"F*_,H4Q/\B$
M0&,U,!'Q#C4G0?LH\Z<!8176M;(@S+8R2@&)QYEV+"C^P0&KG7(058 "G@'J
MQ"3,' :(HE? P+0"*U\IF.KM.!?AOEN,,U.IO0P#P<H$Y"W"\V%,O=F)X :+
M#S"!AW/=)2DIE2Q+:Z8]NU0>TX1SJ6I!KM5L/MUY>PF"'K<";WOK1$=PF3(M
MJSQ'PI;#*N?'"T8Z\2"D(R-=*3L-R:=0/%V)-D0?.UXW8']C=G$2DJ?3R67P
M8)*2S9=;O__E.[T\(I!@WG'M8%" 6NA[O+:)Q_&HH"_,I'(CXR R^DVN&56Z
M*ZOA)'$3%%.1ZUR5;N1 ",[*+Z\.)F,F[HG+*%JMOS "\W2JA>W\M!4IA"\Z
M$\UGS@36]GS"L%=/=6,UB_7H@67)%FZO/S6!+_/@1P^YJ!"LZ'5^:-;W:LW6
M4:VYO_]C@;6B),(!'O=,AQFIEO%6>W*QU&W-[V<@)7]9H_#AW\UX:.-@XG(U
M2P>U@\/#VE%C?]9]A6\I1OTJZ-^K'0']!\?U)]/_+##\(:L"3XUQ]JJ_NQ_;
M,^^?FIB"R6@T:\> RL/6U&H^M(1+(.:P=GS4K#6/IF32$I?C$;PY>V5.EC@9
M1[7&_G&M?G!0@H79J]7W87$.YZ1EVOJNIJ*]-A9#8K:I@D =YLE6N3IP/^K#
MFQHR#4L:$9C.(TT,?:WLH\*9W=?A\%T7:U_(?!SL!9_:#%0#(^P'(U^;]-T@
MR6G"QVY"8(BQ-(RE82P-8VD82V-.3;U5.VB!ZG'4JJBE ;IL8[_6:!P;2P,G
M8Z_9 N5^V89&\?(7KTZ]66OMS4G02RFUE51@%WSB<$)EY5Q9?.]%#AJ,*?'X
M-",L:/8&J'_MOE65\=)$4SKED_5/57% -RW*]XGY=Y@QV_YH_1 .8ZQ,3D7X
MWE%1A/;''Y,R\^K*3-M9ZR/6*/>S>:Z8S[N]A=345((K5?7)Y-.H2 0@J$O]
M::*D+$&FI+,M@C#<\5R;4Q4R:>!@/FY2SB$):)#UAF0A6-T@$),>X+W;6^I[
M_4Y]G@)JT"#)'U:-=?5Y)Q'1X9[+;U5A##U%V 8U7R0CJ1NHYIHJ1S(T*53W
M6/4]INY2$4>LF6@YP?0[L$4=\Y/:C4GM(V^<7R8\*,)YH[+1=VC!4-];94M:
MF&;D4GXWEJNF,EORX!:KJ-(IDL!2N$E](_P6:T,DK3FS)0[E.:^L?H>#D8UF
M9#U-)^:ZJQ"U[L7Z3 A)6;<N26#'CMA8R-*199JPN(2\,>3\6U*)WG<Q<4E5
M(5'U@FEI!$RT@&G&AK.RD*R:!ZKB(;@L=)\L/0([$*'J'PE#:H?N^C;ONS_[
M=]]D_RXT^W=OH[)_S3:[]()HJRO_E%,.J.X#)HQ-J0=R6Y;"-6G"+JN+@$Q6
MHAM[J],V/Y+"6);JV[4^8'616 P#W*'1@9GL1A.5>6O;6YDV$9@?2W]1<"T%
M&X$LZCCRQZ2"2[+ORGU2OHXJJJLN[!CS6$NJNSNY8H#P9D]69\;=DE/77^IX
M!^..(RXK3:,&0WO95%%AW,5$X-5D:>41"W'KHGV(*DMB#%6Z%^UBWS_<P,.(
MR0KMLN)_<,MI<]0Z@"K*).?^-E./.6T$N G>69.VUT\<R56*A#59>S.)?3?1
MWT92FJVAI?@>PRE=3Y;&306NR2BHPB)7"I$G8(KN) 8F]H.5M'8+]M <4 NW
MTQB5>9-24(VEKQ1.3[.=O[38]+$KF>I77+.H=0_6>LZTFJ"J* E2"="RBT5
MGH[8!PV+DR([I=I)G38T:0LE'LA4A6'E]6Q[45]6GU6&R(BI&H&C(.,B8KZK
M/4T9KV5J#M$ON0XJ^;=-:>W9SDK;6P.L])@I7(Y%_UA7%65-R@]VL5XBF IV
MVOP-?6E8J'RD S^R%@'ZM)0W,:*DKUB06\W#KC6Q+* [!*DYIFH^5-9E=WOK
M8H(ZB]\-X?J)4HC*C@O[>(7R F8M$2J4*"^:*N,K:]'+R0KE; T]ACVL<E4\
MD_I*8%']"B.\Q?*1HPD'Z'2%X(*YS%84Q4G*EQ]= W2O$YM.EIV1?#KQ[01\
MR/.HG,T!(Z78IGY%.8\YXG_R.;J$%Y9#4I[NQ-V?QCGAKH =P\&JIDMEL= [
MK&?DHDFNJH7"#VX4H5'*ABYVS:-+')=D112H+D?9^DI@WXLH+5!+W170VR^+
M? %;TI$ MD7P=-ZPPVWLU!$"J[;#M 5EF#38P"K9\-\!;EN,<CAA4-0I4!;:
MQI,:*OL<",^I67X\X );>&+ %[RPCQDDR-58:99<#TCX+?=@1TQZQ6M1.-8+
M(:/19.$GGDYE%-32*3><MKICV,_)K@5+:@YBRS40<J].[&2Y-CE)[33=B='A
MTL^:&/PUO85F&QH.F&SRHM0 )J+,:1G(- >+ 65:T @LG9STA\8S/A"<V?-5
M'S=ADFJ"BGH[E$4>]E'2]!(]0#TQZ: GV*B0%"5G0YX?+!UURDK2]%)\!5;#
ME\>O1-58NE-9TI#('ZMS66P#()L-9]K\9M] <T=Y<U%(#46!%%?M(R@9TS<E
MKS!RJT0#(5Z9L8MK[D@4="I<2 T?A 3=6%;95H?%V2+?.JF2L#1P?7<0#RS0
ML?U(H9C:!*D7&424:""$B/V#VN%16J(<UE^U!?>M2R[BFG7F@=84H'V0PD-F
MV6;/M7:MJYRP4F<ZV4 -"H>'^VS="$NW0,^&LV ;[P)M2\NWU(11#=%3(8Q-
M3.)N%XP\-%<4 %% :3F7]![&*S%&8Y)FAN7L^\I@VMYRX.M;3:LML(,N.HRI
M!30.)>[\C<8A]5C&&)"N%Z-U*-4\"M*0#"('@+?2=48JEFD@V)SC-\ ?AKTT
MZ\UZS3H]O[3.?*P*C)XPN/73IQ.+V4K@,3K?(F\ L &=Q^(-5YQYT5A=*UL9
M6(T]ZM:B.6N0521S?/893)T@8@"YA->"D:_[O%$#/I2E!C?/'\BC0GD.3"C/
M0D-Y]C<LE"=]7R5LW,J9Y!_10T7G%-M;5[RG#B)>JAS+NHO()45)GTD35[7Q
MQI8ZZ>D[J533D; A>:WSK=5ZR=K+T.!;N)H4/,]3W=AE93:P=+%*^^2>6:I
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
MF!Y/^B$E[:($'\A619C2-0!#F.GS*-7B6BKX2#1EVJ-<W-[JH(E#@KHS5O7
ME%"V5//CM D-RD#K6M,E*S(-AA3^EE2$&LGF)TILT^[7YU0X T;QS8>E"KHU
MZB9%VT--UH^"6:,FY7J33&F5!HMF<:!1<F"6T77>?Y#)X$\7Q%:]3N2*R[NS
M7H NBGU8HAB;-X6D&Z2EH^#/&IB(D1H^TI=C>"OA=QH2MEM-"@XD<R;;M\)7
MJDG+XW8E64K'-%RM_D"*MRIU9$S\57A@K( "',9<D2O5ATW<@.T( V:?*>%
M_D#W#_4&"T9I_3(L<J+/S2),J, ,V5!9+2S$)G)) Z9$'07-!)7Q#M> D9):
M/PLW@>11$R5-9.F74.YY#*4^VA%D;\%(/!#0GM5A8!.AL*<M84BU4:)L5\:T
M.J2LR&('PS$*/CVH"9V[EI&(-$YN]_W "WHN6CHHH?$A5$EIY**XPVA:?!ZP
M0) M\()YQ6#F8>=&C7H0>"3OT8MUYF?2D-/R8K2;N3[LC0.J,,8D?]'?F)AB
M>S"ON.W!;NQ'R1Z*AMB4]0 4G =@DUAMN!>V9NP1Z0<C30^%M!$UNL9..'('
M ]H4@D!6C$I,+D"6SH>&10JQL261M+T%.D DW$X,,UR3%AQ9>ST7F[LRV91+
M-E=,[!LR&VL3?07SVQ)-N_O/"Y4T-'+A&;XW6=>RB\O&=<O(XOU N+V^DA#(
M/Z17Z/V?6-)C[@"PU0.^#$G523P+J"2J8MB:QV/)T-A%]IM*W<?J3UG>SM2!
M-7M,V09RTW>%@V=/@DQ4A%'(^3=2CA$(J?3+-;7)B=@<ZNC8 .4^H#3$U49(
MR)IW]^$1JW@AB,:R&6S>HI9]8JGT!!9HI"V'-@CN4$?!"3T('XWEM9A(T2ZH
ML3#O8M-!3;%,S99PA\TPPJFPU$SL;F_!YL"47["F+Y.E&-/+IMDD4Q!R!*9+
M*(V1U%"0?BO5"3<62?-<FF?Y"*F\4^%YY/ <HUF2SVJ6],9EV&URUYDN)1>(
MJ=II:X#@)R0A->HF"VFA64C')@OI67OY&NV,<D!Z0=9L6.VTK7;JJY+[)!H!
M6K9+,:Z=,DIC*BS9.J\[9FWF<VT4*%+#$SM;'O6%RD&8&L#3J*$#/.J:K*QI
MLLU4,5!0ML>!:MV-Y4D%6((9!4$7GY_ (!YYI:V3<?_7CJ))HQ3]J8'XEAZ*
MDI&-;F!J'ZW?I5VX5"8U5DVA,SJ&'0BTK3TZ!40&&,:"QK^]A7])1V5JC:KV
MYE0_5H]<Q0SX 59]C47Z=J2&#3#")5.#/S-BT+JREU.S 2'&DE:*UM)=>.B4
M5NN'6HV:P<9H5\_Z#94JL/U5?^L\?2DU"2&%#MKMK?O/#8V#MKH#R9CE@=^C
MFL6Z'[H;3G8C4($ 5'@8]H9;8-1,-PQM.G\#UN&#H1>,N3D++.5 \N(_Z2HP
MN=G+< QR[W%QZ^+I&2SS>^:#=FJ]V[4N5/3(.[!;T=7+5+P(/DIBP^,R3 ,L
M8RUFDL@*V9-D>TL*&W3QD;VMD2,]C#!@3*JX91Z"T,-JBT@#&M=@0VCSVK&^
M^<'(XTXOV35@[F NQ9A:LGP6D\2"Z/:HY!D-C3L@XD*Z[Q)$%C5JH,>>]%W>
MM4[ON!W3R<,%BF<NG:Z9" LJP6V+V(URD8MXXL?UO7B6B2/R\5H\] HGMP)Z
M()Y*6GKBN-^C, \L\ W&G+3]DR?*Y^'R)%UNPF^PD80HG_$P+I0;\]C"7C9R
MVU:>4]KWZ&*X*>%5Y/B^V^NC!9\Y;ZE9'!WT4BFDV,_T!BD3NFBN9 )BT/E/
MXI[O6G0>D![A^.J4$+:KGF #&0.E]U<*<XHB#"6536T$)XGR3PS\08TSDE?7
ME$M_YE:,$ZIV53V=ZFF3@(9Q$7TYN86+R'+[L1]3Y7A<%EH!I5AX#$\Y?3K5
M]151'0GHA*)P)DE:FF9'3K!)Z&!ALKSKNW$NOTS$DVM!+*)D^F%S>+?T% ?8
MR;'UBJ2V >(YM^N6.OT$2/_B@^ -/!+%2.8U%E*P3K#QED]>^/Q83 K*ZECX
M''=MU2 >IGX]&H<9";1@"=2<XME2RY]+>;+C\I7)&F.]S!')*$/FF'50VZO7
MK?"?7:L;[:(C2OM9K',V1!T/--R:=8:'30%HMXEZBGXA5&4#4NCE\2#8*X'
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
MGLS(U/VVS#\6[=!4.&RIRK5[I(_ZB'OK5*M7?U2NG7+U=ZQ?JJI/#]YE_0P
M(F?8@[NUZ$'A(\'! CCHV<A -NE$#7D$[I@3B7[$>3\3$6P-S8[<)NQ1SV^R
M-..15<F3!WE@3*;$T\?@Z'@W;NX^VC>#0:85]?@5Z5.Q@/U>.W3F@C.7@]7-
M4\%A ^+89(46=M&$);F/)3HQNZ/)_ O:0%;5O3$/"K'8][ZW.&.0*$0X.*EO
M*&RV! X_<9: J*;S'&COWA9LC(MO$]Q.\\%0,>PT,)BMPQ9GV8"#+@ JZSC9
M6L.9'_3,BO[,MDC!"!5H.\T)3JFFJ789XD")X?'PI&\ FTK%SG/9D@\/?)A^
M$9RZI 66M&^!-8GV1M$"2]RWP(JH8":5*N:E:4N+90H[:H[G6J Q2->4%<K?
M T,;T4F K@)M7I<M5X'R7M-Q.D09^[3@P$(R[/.>YN6YH3UIB Y:EG:&88.E
M,/& 3NBC@XZQ'8UI&IZK8L'=[&)'.0S4 7P^P7;FEE^Q>'W/5;UMTL[MOC5X
M?=,5 L_HXB 4SNEE30?Y=4VU#=;UD$9)V;@K.C;0>U;;- ;<B UG@F42'0<E
MTK@LRB,-T&ERPX$MWV\C(/&"Z#N>%#GGY,IGGB/-ZBK0:9?08#B:(K([3HO-
MM_1F!LRC$&K.661RAT(<:L$[-(,-BG3? A;IA%3DCDWS;%0Z'=2)9GFN-[7W
M+-!D\ 3?3;9'YL_>S :(*H2QC*%YO.CDEWD-O8!K#@\PO<Q*R/#9I]N$7,B%
M-R(4A[!V)QE5C%S![J;?X,DMG>=.)]@!?=7TMM%G&X^;;9(>T2T<5^'\X%+P
M@A$ $J:]X$PYV;'\;:H2,*>1^0[@IU@V?0)/24UAX204^01(]:4ER*0[VCHW
M>63&Q&\%UYVNM"HI]R;2<15 UA'%6KVC_(2;<09!'0/BQ5SL"ZLYM@];SMO:
M.TS_/'-5W-NS=_N="K.N7#Y2%KD![!MZ< P^5ND1]I$)[]AZIR];(:X]J-L$
M-5ZPHF7"S0Y,_3&CW33 &K*&&80^^XLN=3.HO7^E)): <6T&MNN$1;V>>4N@
M(;^=/HB.EFMWN\%\@"\1^=['8-LE!/">5G=*[B9!K#& />V)J#K7AG<8?3QN
M-6=KDG=0&R]KG[H!'T3QZ'0!N$M;.]L<(A'#@T9P ^V.UR)GDU..KP6CNZ^Y
M/IG&H]W#*E"NCW-BYZ9:[:"0B$TP)O;H@%+#701Z9Q5%E)Q0 ?)G@!@=KFO@
M0!0\\'MU,FNO!>+%:(QVO%-D8\J/7-\Y]:33O]V<#.<J[E'NLMP0)]6Q[TVT
MQ\P+KU3U9%<#<?O-3R?K[]&:%*ROBEM_H#A+ZT[M++/N]73<>IJI8<PC<E4N
M*F382$PAXW:5G5_KYJ6(=?=H?8UZ=O>#364%,]1Q%*ZM/M!,2$TVU:D3Z]11
MP,X*@;W^WJK^WETIL>/!QE1&2)<_>I=H('9&N3:-#J%M$3#O'J'LD+V+MA?Q
MK^! S:<CG'[23@36LHRVBM/5N4?5[G$Z3FF7=2R#@*_Z6#QGLE_JHZYA897)
M_OAMKUQV^O@M=F:ZHJTT&7RLP-5"AI%U8@SWZF2O3EZ/.CD\,(DF.UUFT9AZ
MIE#ZQ@.>WFF&K%NLJ^6%JFC(-;2LT>).9?T>[V[0EA^_9%-AW^W5S%[-[+2:
M20.76D,<GD+VD:R]7DH#K,\ROT&;D$GO#@OKB)QI)*RIE-,+2W4)G7DU^RC7
MJ](0Z8IRI4%MP*X3R]YKC;W6>&7>C!,;8]X**)]A'_0,G;#A3KZB30XOK[EK
M8@YYKEZO[+2?DC+9G1*%L[.Z)?YJ)%-^(-JK$V%[I9 Z5X)1*H,/Y#;U&OIL
MXIL[*9-^WR)./RW:+*NOMG<WQ6T?=-HA?*2 ,.JT<U/U:4!TBZ0$U2Y]G*4$
M7N_1U]YD5,= O !Y8M@RC5U,#$9LS=<:6EC&B-<^$C99&+N#NV.?> RJ*T,<
MF8S=_S2ZBX3MXLD,[44UAF'?HG%N7WF9CLJ#C9-M[E'5-%:0:@$@:@=86+>U
M$2=W.@2[Q0]9GW0VK@&VTW2&:M#[6F3?.''!V],[IB:)*361FEX>Y%(RH)?R
MA5):S,:>$WS&6#,;RD>G&YM#!?Y0-6>*L-L"V^G9VO<J%>G5LD6G9K8Y8 \%
M9;S:9Z/Y\/BSTE-U^80K3UU#YU;<$^Q9W07AK]+.V$X,')5 \[KLUL"?<+4.
M9\L ?L=M!,SF-J"^,%%1R+3K*XV9XP@$324=VO_8L#GY058UY%^>L]#L=3NK
M6'0N,BH94Z6-[=G*W=I,:V>SR]/%>'M84U*TL-^JM KP<MM6'U1[Y(E/E,\H
MN%$>=F7+:^?.8R@ 9+,%ALNLC*4SDWWWT&;9NKJ7@^F@@73#NB>KG84U17+P
MS#2&W9YC1;;=48]P@Z6B?0>"CPY2F2?].K*)9N$'%(%[XDS!?J<;UCU9[2RL
M*9)YGO,._C9XX^B*>V<]#ZHYG)<8MA]FFW1H]0J'4N*@)ID9Z#@2KVM@R!04
MDV+06,4]UB)A-$4?<;9)=!P!26>&61CG&((6,S'L8=.!8AB=I:-9>[+"X^\R
MC:KC\ 386Q;::#MYZG@=6/]>,ZK# Y=>6+"%3B8;$LL)IV#<_66,=UTR-#*S
M'QHY.8**8FBDM!\:N?X ;!?XUL>4L=Z_"'$:H:[( ]5&<7A#+)"#;<(2K^OJ
MWZ$*[L,HA:M*Y?3WJR&H1O\.O!V"!GI'SR%DJS<UXLV:/^,-;H0_1*H)K9[Q
MJ+_,Z6TA=,JJ"W/Z>\M#VUAP%.EIB"+J(^=.4P6GF]WZ[*@R].RE)0DSOBO=
MAN2NPJ7*>$Z> \"-./SOD32K;!<H]"!0D+Q6!V0'H!;7@#K ,0W>1Z 4@*-K
M&D-=06HQS/><V6V]E80L+V6*O)3+O0O8:X>&\L*;(!.E@OP^,(T'56$#=YW<
M D.W9M?BS55;G.;B6C6!K_O/G(>*^9G+*9D??13Y;"'/EX3,O/L"WQ),%-N
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
M_&%1@VFHJ^P!MXVSHX]Y7A1SO% JN5%1]_T?YX$?N-A@>DD1&L7-T)CC"Z+
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
MI)7%5L1@'-Q6 $4?4\A<F!AT-?T!)(EAWA"-!BKQ<*!IRKK5(6:Y2W0;_,1
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
MGJQWB05> ^L-@ G,CX9YCZF0;089I^)TXGUBS)KBK[R0#%S_^8:TB?J >>M
M )EY=NWW<?VF^/LS.;=C2I8-)P'=92#5R,X",+/*6<&6G<PP2$XNXB.![5CD
M,Z4-1KNF#Y,Q&.'@IV?S?'837WVNF[F /S&JK-N&J1)K$6/^KC\.?_4^6V(^
M<6O<SXSJ!-J=(QT?)I/COBPO2EE>6*O_\.YQWS(4QL-VA1Q?6.L$<0.VNS;)
M0%85)ZBUB/.DTKCP5?^>SWR/J75PV/"KPX5O56<Q[Y A!VP=;B0V?C]A18J:
MQO,6XJ]B1N2+^4V[^.\0CX; :!QLFBGQ!7&# ]SE383F&P/@Q:$E@+E^[;8Y
M)$I=E5NJ1NL D'6G#TE&3P_V5W)1&'V*<N[S!H;K@('/4E'9 CAMLH*=H[ P
M:$^LSVM!$'@Q1 _0G3M B1"OT0UL%R2^N/%HIN5)!8%KQY5ZITG$Q0+EWX"C
MSJN?I\.GST\/IP_=7?%$;03;Y>9=Y-I@#&]!Z4K9$I]?:YS5+C+M"FB-(\&.
MCG(58FIN6EG(M15L=@=O^Z':O0H-L1/3%5:C>9RK7%]4K0>E80VC;.PWGUUG
MZLR7<;'BYC&8!)R=(9G%8OJZ5ZY*T@MW-<&<P")?R$78P3U</[_]=L:3IY'E
M"]+R$&2$G=K/UFH-,=6.5*Y4JC>5\4.^A$/4)Q+LW/Z1_S4X_W([6"?:%G?[
M93Q!&3@KY5HCSEC06N*E<D'X#4^RK"Y;R/,E8?5.EZ]<I&VXF;%T1\AEP@4E
MDY_/OA\V%^GI:76Y&F&)__,Z#&VQJ9 'V+ZI4*1T !Z>TZ2$)GF99+KD2 PX
M*KBY_7DW+MZ*OW\,O@ZSC77J(N9Y/D%-1ZZ'9KN'#HW12;+(*&264%9(3Y:0
M5WNP8,^3*_<1>$&(/$](F"[W:1.B6+@(ENA:A=7:HPMB]W"&YA2=SWCWE,9_
MPO]GZH^/BK%.7FAD77?<=2 #$+H"'Q]PBFJQKOW^26Y;JVD)A_ $,T;R.2"S
MM'9_V RA<;B^N1*?68MKEVNE["*M=#JT5$Q>)&P2+IHNSB_*(BTURE]=7)R3
M7V>%=6H7UCT?<YIE[5Y&]UP%L "]">:7E("XUIJFNBOIWEE1B#;=6URHSNB8
M0_@:G$=[=*W)NEW6%900 ]S=>5JM4/M4M']6OG]=:SQP9%JMX=3Q#!SXZ9$Q
M<8'?F0V5=L^Z6U5G+":3Y)HG9/A,,1[5L="A6<@@\Q3'K38FS=_-G]KO9$J"
M%A[L//>#%C-->H-GJ^JMU:@ZIE!HJ2B"413A@<#+GS*WX4;&()X*18F7Q.B'
M+*_=ZSL@$K?L0(=*+KELVX)9?OSZ)2;UOO&!SM"BE?6.$_O2#G.64'[XW=Y&
M+@NP0([/KS%Y[A7+L@UW-!)9-F<_\^"NYS+Q"K588[^[&UG?+6B6#P^80Z5>
MJ\-=.^_Q -N?]VQ,!Z4Y480;,G#LL*M.'>,_5YV*210U*'10OSF_&W^]OOGR
M>5BYZ-RL4S2^83A-><!>@.C]6#W#M(%FS#ZG =CX59O"O3N>]US4)MCY42SP
MA<*FS;/3A\PX*D**V37+MI8SI]\5F%JHH7>;0.)GI#4O4D%YLGE;+3Z43;DP
MBBF!*QQ[>J#3WCP .^-/[%FWY6#W/*0F6;8LE22^&,*[W$)H.TKLQ=%]/)OA
MA;7"A@L=\,H<E5BSK"&JF>?\%Z0/A]\T:7S3-^2JE+@^])\*)\MOX05W,#83
M3+L&N2;PA=(.3]\(>0Z1B;B/T'E Q/RJXQG=%<.:F_Y#*;]8>LK],3)-\71+
MS3-$7R]P5T+MR*GJ+!X3-/F*?%[<R?K!*%$7Q^%4L1 JFWE%+5,(/)>Z4'7#
M5.T1G:W3 _^7F MY[=?WFIK[E#E36W+B6N;,EUU$1WMA7R,LPC T#9US%6=C
M$FO;-MYBY";'@/EBB<]FTMC[>PT,QL"'15 *0O1\F%EJ[56,?M_0Z00S:NQ-
MF7E"[_'WS^:?7$5<I[W^1LHNQ+FPFTC1IDN 1\(:TA]T7\?(]&UBW*TIQ:S
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
MWR-IUG1:8)XM.5IPS5#:<BI<A"#@F0DLV OOG%;N)H<U+LTPVJ@8_8&AT^S
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
MJ78^<'W9[*KP?&$VR:Y-$%TS"9T4R([<5[71^V5/IM=:ZI@P0"; .]F>@S3
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
MY?900PA8?!HSZ,P'0S5]Z#T\P(VP*.+8DS7# B(94B_"AV<:\' ]7<X)703
MXBS$FCZ;!X ,/\%9/HIS7GP,4@8K=0X/)G0WM,% &#N[#O)5 S+11K*%9T.H
MWEJJ@5_T08YS;W%)()XZ")+IY@8!H$!-3D9$\[IL3?*=&%&CT]$"(CD&P&VX
MW_*#J?BBWVTV5QA>J1E=!(\#%M7A\6U5X;GZ,8-*;8-ZA=?@+L!SJ5I@A:@(
M"EH":">W#=,T+$07)7AX&!.^#D('Z@ _/ZIVSZ,6@C*:#/N\QY8\0X_-^+SO
M&N/*$,<1$<N! ]='L3^DT0JT1IQUXO[J/=JJN8,%"H!IQ",24Q\N>L#'M4UC
MP(TP-9_N&.P-6Y;[,$80H%\H:?; R"%8'L5I,M@V8#4J0+9FEQV1()E@)BV@
MQO0D!2.$ :@<%?!(G&,0@)Q3U >5H6B6=H")'PT.5*=IP*.#R8_Q=M=4'0X
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
M!^.]:L[SM3.NH$L8> +;Z'6]CTYD(AWC.<0*3LD^]@BPU5YRLMV54^Y'OE:
MQW]ZD3$(8H>)V_@BN_H#=X$$[N IEAC2AOSA0=,:X):!*NDQCQ08#[@C])MV
M7CW^KFHC!:!GR"4703_$N,5L=, G41P&)2Z&.L08E%U9@W80'&[WBF$I6UU1
MZ\@8[8QK*4;+ZID#H [ /$I $M*OL"4:QA!7AO<(Q B@7Y,B<=RF$:V@26K%
M :ZC"4B2=?=K&#D3-\$8)P< :8H4/0[#8;HGWQQ"KU_5$G$/+=K)$;HRRP;&
MI,*P)  P:>%FJA::LLDZV>/N&&W<697BFN"^]NK0*7 _X<KD+X 8@OMIDH&@
MGZS[9<!_@1=@KDX7#P#']RX0^AF[I]]#&X:&PS\K#D4E]%WG(08EZ2FV)["5
MAP?H/, S&"B>S<(&L1RC+O1IDB43SZN-1F=PI7G,\N@Y%6/$#+#'2?MC(F*I
M$GK0&+KA5Q"WX/:SIM7J.D@V)X<'==P#ZA/^1]/=*V6+D B@)D86E:%Q-33V
ME4VPLZ3O*PNC5^[G.D"H:@2Z'6E<0]1, J$&J&_XGS12-S\ZR])C-D:Q1T7O
M)LW^E[R3&%X=?S6?:8PZ3X;P]'JK#(T<\@0(@3A&H;U>W\Z%$/ 22\.\"\WK
MZ'Z-]?L%$8R[S9W43C@)?$V#:*G 5P&@VCN&+7O=F,QLX(*HB>A7R,IPCSYP
M#I(]&'V0SH*!%!MR7S>P?@M8 3\^?QX^394A:"_=L*%;H"LZ=!YF,,D$I@7I
M"*SP*3 +4OHR;B7-(+!IGBAG=F6D[J GU0E',6"QHJ7XRF115%A@S<56:0/"
M,)AK]L7# _))Z#4O*AAGU:4L(,Z(R.4BE2@!]_1H7RL%CZGCKNIH8---S+&=
M\6UYB-49UJCVQKG>F-Q_?GR/L-D6N$^\>U/0HT 1ZF%+]K>]8&L8<QM9@GI/
MYGY 0Q&":XVAVY 1@WY#^H83XP[WUY&1^68BTXF]1KLG>AH^NM;LC$] O"='
MV$NQ+5H(U39@\]$SVA$5C5CXP!\R!37'1T;WGD"PO]&T=,Q<3E]-5R=-I+?=
MXFT<TM@QK0EG'!Y0GE3:%  ?/3=V7BG"GS]O.J^CQX>T(QZRP.W!J,"1P7]I
M.S)@,RU_=\X>G('+/7_OSL4&:HR^<MKP^N,Z;A7BNVCY=?TMOU)C]#ZH7QM#
MY/#44T>G3.7=(W\,>45PR/;&7W@+^87LC-9;QX#F$!#_UXU_ <L47X*&:Q4R
MTX_T'AY@&4JVMF\@K]90F*L+?^\,L4C[Q*V^0*O*Q@<Q1OH$WYL(XR9R:^6.
M(4I8L/9U=0AM'WA0UFW+P.H:-+@%$0V0CS<ZX*@*V3W;;-%"/-Q!@ ]-W,+E
M0SXV!W*?ZZ%-5K%%S3C&<(0!]1M W\'#V 3^E_LA((4'\W6"B52UM:AH_8%4
M(@X[XE\RC%ND;.-!;[HC77H3D0C_%<9QK#\V-,_]2/STA_1U60O ^2T9/9O\
MB5&-[>]!/T*?)^U.,;XSX?&1^)'ZZ28/?)51#0,C_\".R<\IXX C8Z*?S#;T
M?,.1)D_?R+:EMDFO%0AO^8]!49@Q1725K*0-V,1T!0ZH, 9.AD^Z>I(3>V2
MV(8VI,-'_O  )@;0^&!<*_!!Y(R\D5"F25P_^AW#:3?#>O@:G-5':T.<A%C%
M&-H3$0WD-R*'!]E\>'!BL)-9@6G61I[GL0ZWJZ*!_#B3M:G W7J\<68@CJR2
MZ"6T2R<8T)AQ3=_N%K"W'[1U#F9Y0ED2QM-)=T?<!Z^+ XXX["@1\&91A:9O
MR,H$R6:25@.D>8[O?NP%WA8MI :\2X[XN,<,?^F3PTRY'IW>@66@ ]5%;CS7
ME-&I0JZ($R#^!2QHX(MJ'B+!&"D=.^7 COAYV83+;L7LTK@$"R-+SLFB']D
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
M N ?T09AD.PV$3-3CESU7,0D@_%(X@O!Z\&H:E05LE)**'# 3Q\>X/MK7#N
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
MH*'Q#Z- 8RX"S,EMY9MSF]^.XRZ&@^T_.DT+09SVGY^VT,&=K;V@:;:GS_T
MP#3N>%+2%$.3-(+-H$+HDL:Z;Y]=QM6R>+<A22/8G"*L4=((:3XG9/A<,E#2
M0.0C=%$3X4Y&*6H^9>&VG-'BPNOV29IE^&<3DB:9"Y8T !<V0<Y%;1Z(LP88
M/6ZT=?:E>_M#-_*@H93=EDWH4B9VH7XEGVJ_7Z^CT55,*/DNSLLV>;/:7K-9
MD^:%>))/QI.!LF;"J,E\-Z-F<F=LX7(FOKT^7%R*7^V5>(,G2:!$4FR=31.T
M_I#,F-04,T;TN: (-EORB\F*\"V2]$U9DM/"1381C;997%:LTS!)(ILDQN=R
M@1OJ9Y<4OIM=$BPMWI[B'W]J6O[UKK/=TF(ENR1B:3'-%/D&E]_?YA8?!SC=
M 4W$FJP#M*KT,,QN4VZ)%LUY94$]_#<31SA9*,Z)[I&,H>:0ZZOX$@T_AD?%
M0;F>^ I5,9YR0F5@D19*!$>+?:8G A(C-#7!K]/X)TYR]7^?W44/T,GMX00B
M*/+@VK)$DW[1PSCCB(9?O:%*TI9[X IXPGTM+-<.4Y+Z&GIX]BURMJ'!GS?
M/-'/A>)YD@MW2 @@C.Z#PN]I&XR?;*L6H"RS(C12#: .O3#+#B?Z)X,!'$?S
ME38Y:"M?..RM=8YQO6[TY;+3&H?MF2L@LPE?]1,0<;@5F1!T$UP&/.4M4L/)
M<U +@/BEIR/]J-MPNQZVHG<?;$2[7Q ;^O# L-&[X4&*W4T1$>TR<()#X \\
MH$D3X /LE^/X _X"L2M+'9S6.2[OV63=*]HK^"U:R!1).9]0',<J,5B&LP,/
MCRU?1PJZ\V!Q?B=C#@SZS(FLRA.8%G.X"V/(.RESVDVBS_31F<"EL[9T!32$
MO7#=)GZ<1[A.[NP\@G5<J$XP%$AHT@,!,26 =A.6E7UX!M(ZH9"950A"]783
M)Y220F_Q0[<,+$;7J+^_<:%4"??VN\;YOF4'+MT7R=M]OS[UO<:H5._=ICJW
MR5:RO8MY0X9_WI#0&&G)SN=+N??^>9T\.B5$X @5.(<,^P2BS>^A1_W:-A@&
MDW1U!7 Z*I,FES3SW=5D 'O1) ':>9'EO'MRXTD.$<W#1G*+(3T<'KA!R!0-
MB4MP<$F)-MAX<(X-774U_"9?DN63B7!@<N89+&+\:MPNHMJ^9:CA>8*,ABP#
M_RL$TQ@<0S]I6;)4:'+E._3D;V49TEN]$4/G>1;8>TF\C[[2CS?G5MP.[)4\
M]'9(RU, ;KR H_E%WF3H?GP>\XF^6>3S]/1P=A-4HU/@+,ERC]A*!#N%,M $
MB(;^B=XPNTK?49;4*?G0,>?1UG=M#U>00GJG=BT>^P_6KJG8?Y#+H:+U6)TN
MA89L(X]%-TP'F-*0:=X;J7K0-9)5QL:V;R*;.J"IXSYT@&V)Q_!"GL-46>$^
MSONB!1DS3Y/)N8HD3B:4'(V%/T!="IG<E-'X\9.I@ FB4-1*N^FM"*?,H:XG
MW7\LMX_4PQ#J.6$%9$#C1KFTD@-W>I0UR71 _IF7.'ZE2QK_C6VA4S7!NC4"
M[B!M'>S!4< 3.88REF.[I ZY@^@;BD%D& V\N7O\#KJ&BP=H]=</&/\G3QL3
MSBI[8"TLUU/RL.^XCD72!6W9D]>01&*-</*8">?ON3[_((V1\IA\*=;R9O^U
MNXMVFAG8:>72/'_7GUZ?KBY:1Z<7[DY(#DTX0I0]'-EV+H3M&CB,5&?935=<
M96E]RVAU 1F$M&#!T!Q(0="B-@#.@690S+*R6Z*;8)0YK<69I&?O311-0P\N
M#"YB,Q-#!.E!]>T(\()LS!W:$ Y;F[:D1F-J%E9+-FR9@8M_,$18FV.5DZXW
M7$!L(O11]T1E#@_ZL@%WAJ2/.Q[<:?KE&H7,QPEW6@;2*^^6: Q(CV'<M XG
M0HKNAHR@J^%VD;1(H2793NES4^[ ]1 H*:0<83Q$*A$7 'H+-4D<"YL0)+#5
M&N^$Z+6/,>8OZXUB8PBYFJ, :!*Y J8$H#;\X8'_)%@=*S-69%;E/:5:U"\
MU\81- ]IP.HS9+B>(.\J4%H]A@S TW)R^ W;'FRVP*>X-NP&F!J:J Y-!9>I
M:S(P.%+T)]RE_HFH;_#,A'0UC81_NA<\P!63:#$6^AS:38+?Y-20VLP";\&Q
M<%[C&6 R ZK#A1!.U'PZ$;"=0FX:@Q9^>,!6[@TL6B9!Q2-&!>U%Y_ 8JT-V
MFYGXS!-QX,QI(C+*>YB'+8(U<O)9A0W%-6.QY%[3]%^O??H8XI7G75PRX;*?
M@='(,07A 1)G-C_X3M+GS,(M,D%5(EPY,5=G1]RBPMV[BE4/R\!DMISTH*?9
M@]+^6.,EP]Y)V4:O,WLT#7;933^ $QU=GW&Z&*K(9!%=3X[MWS?0>*L6ZV;V
MQ;IA%^L*^V+=O5$ZI:IW!Y=0GF@%ZZJD9#UG!X8HR7"10Z^_X9^<*;<,>)PH
M? WW0D2RFS9YQ:$"FO1&R@S!<.TJ??J"^^$3SF<6 <.RKB?,SL9F-OP6+)=)
M*UO77.8P,B@4DP\PN"G0)MBE>ML=4R%8NL3&@)EZ9N33HQ8_+])B& :II%!T
M$K>)IAOCUA>.A"'[FYA%KF<)5:@5[<#K,D/:,2E[8LO0C^UJ4,=E /-+0OMA
M#.TH#C*YC@%V"HQM)S1(8'GA&4/N6"I09.BN*C5YT@.[JYAPX]?"N+\>HY)<
MYKDQC,?,]9 ,<!:K]-)_BK%#C P_DY<"VVAL"8 [4H4M^T1^%N^VQ.!I&K=D
M6"G(#7R"=\E6!VRI]^J46-3TQF#2?)M8$ZUB'C/;T(>I!>A4%<\QF(= 'L/-
M:\^-O\B[#Q:.K!)H6L"&=?I84UN1-546O2YL%XD[I^"%@8%!@/;;FFR[N)!%
M4*42*88JQ=C%M-MI>6)M^$"A1_]13C'@%'KQ)Q\0*C#=UCX1.(XN. Z2O)\R
MZ7=/CC#((%P" 6]#>O8)=R;:[5XGO.>Q$,&G."&B(/%JBHP:=T)X6P&BA\V!
M2W<25=H5)6];VG&/23$F< 5) 9D!LEX=HG/GDDRN8\:$%*P!1(TJ#V@4"ST_
M<1QM0'D0,X[3:DRC.*6UXQ@>'DB6'2*85D>[3];=5.]JUTX"&)>OV6*;56 X
MH<\:HM+I#HYQZR-L/MG!4\2<CM:Q3!E@+J@UYX[ID'"C.6Z7.=86ANP/Y#(,
M@8G9&V<&D0?8A-WMF6D\$P1///:K[+( VUP%VO)4\*LDR(^?0N+)%6HD\HY>
M2A(\N^^KD:*_NT(SS-OTO$6FHPY@@'9W'))O6-;<S^#+=;3G0;=:.=>M5AC#
M-T:O?^JO75,0ZA\[F9<T",0SRK]^==.O9S=7+T>G4%F$CH%#"LY+K\U>>"53
M)]E]<&%VSA)D@"N@R'L$I C:B@$2+Y)=(,(U-*I;?GEVF+,[PH"!@7$504;K
M^);,\Z"DD#AT5P1C#!?^D%H+X@\[Z>ZS>_U0''^=.5$.)#\_GAS!2;IL4O19
MC)]I^WL&Z16 &]; /Y&],WNA>/*DVP?I-42*2D"/T84YG3.<58%[Y2R$@4:"
M%>0R$QWTQPG=,"Y279(KE6N,Q,^S=Z'2*UY_[.+5NL^96H,.J4 $1:XR .R*
M#*C8 =H!*F-M[3#]Q<:H]Z9GSBZ:YX^EQ&J;X4/C?SFSAP[G,5J6.5^_U^9I
M CGR!,B;3)4E/?WWG^9W"#&.*:AXNC&ZC8D/M>S]L.H "2+YT%=%-#SB(IF.
M,B?H?*64KY5JC%)1<?W.[X-C A"'VO%6.Y8BV;73*N9!%MVB0I7^LFE?^E-_
MLJ5"[D1;(<U2:)C3P:RW"U)D>P22&:OB(TKFX?,BSYD 370\&/9QG)2D'3(!
M#6#X$Z/IQ@EW[DR?8 ++<,7MN9,7XE"L,.AZB\0@@ 5NM>G!I3:P[Z.WCZ'L
M]@=U+>ZK#]1]^$GC:3@[!+[*Z4VTH20V0@.6$W?3Y$$*JN=X4WBJN%D-GCV
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
M2XG]W^9IR@[HLL5 AXCQ0&ZL,7K[*FB/;[)F/K<B"=*5;QY+-_7J?;E4VTA
MM];JRI*ERM6VO:NT6FAJ"-==!S7O$(U167^0'EKQJ^KO]$X&;9$)I*ABNRN>
MC=Z?UI#.RYACS:#0WS14FW2%:OO5K_N2)=>S&?%[A6K/'RI75Z/"V^]R9A^J
M#2U4F_33?M#3UT2B#_IL>R*UY9M14;DA/[Q5!HU1XG=*>%54Z>-W1'[3]!AM
MP>Y"#0VF)T(VVQ<[]"=QM%Y&@L_&TGQZ#CSB;Q&>78#$H7D&"3XI9/CL')Y!
MB"GC]D+OQ<]KVGH4W**:!1U<Y>D'][K\7FB5G][,R_@F@J]HRG:[5-):SJ2S
MWOUPW9SL&;!K41<)\VDASF>RR6\2<MCN?0M-P*3Y6#;)"YD0,>47*SRPES\>
M1&4"Y:N6T])"M]=O1G1;NQ,15(61Z?O'3=T<$;'02B+UFN.3B8@*%O[.[0E-
M-N7X5"S.QV(APKNO%!:--4:EU,MK_"[W7-.:D81CV/S6%,V\-:#[[6!XJXH:
M=((KO5M*'VH_9D<WW3=CBPS3&,4?G@?G[8=FK;BF/,1EHIUI.]I)_I<MD>?L
MQ6'K$J=Z=W558J'0Y;\[5GR-I^&3)_OG\O7YL67%U$_QZ/3VOGI;NJ\_\X<'
MMY7\39W[?V*O_XLKW3V4;Z&(W=86KL#H!D*F@0P2%"P5YN$N%T_ERV=%Y?HL
MW_F05^.IZ".BQ<;HJ7SU6'R_>'F.2]%'1&T6<;C"::)W6:T4=P'H(*I0Z0(Q
M0P^25"!/VCF(HZ="^<+LU*N]KG,-,BL:NL+LQE(CK9Z%F\*[6\2@GU49?D 3
M=C=M"5P,7H>2Z9P+7T]W<BHW=1VNCX:PG+D$ '89T!3OG\[%['DV6RZ\+4?J
M$"*PJ\:F5PH\%W1SL)&(^DJS7JV9TZ9GCYAOQ5B_S>U"WKEG:<QF^[,AM*K.
M?RFFZ^DS2U'AX^A!]F.YUS?T#]Q^WKS&57B-4>&I6U'/GY.&JD8:5T^.AUB)
M_<VF1D)SBFN":XW_)I>)_TZ7^=,\5;9+C;DV:7[':1RZ.I-)\>DP8\7;O!UA
M*;G-;UR"3P@Q/C='(?RWV+AIZGSSFY'BD^DDGXE%?>,B)%>7^7ED O?TIJ+*
MMGROOGW\Z;V^52QEF6CI!$JRZPO3K;B >YK0,'E"$+X3U%J6181<&K3?BK 5
MFZ+D6N5F>#2/9?C8SM)\99$7&AVA"B(6">**D%M=H$':A86L:_LI)M8>TF;^
M\OE&+=Q%#[[B9(# 5+BN:$B?HA%2"Y8-RK\ XB[+2<D$GTS,QIW8S@.Y5B$8
M-N'C?#J]:@^_K>/C>25AR,3,I&<;>LL(P^+JPK#:;BLM>4(4*O(?LS,8CBZ'
M46&4D362SW,R^_Z6\LW\\L^7GDO;(XD$'U^Y=\-?(?["I3M.,MI5M;.R] N5
MEO$8GYP#O&P9\1=;7?Q=BZVNHLG&T/TD$X*7SY58M_AT:U3D=1F$UZ)FM1&)
M+ /Z-WT?L3B%SLM'(M.))!_;62-EK>(Q OHG^6Q.X#.)51L9;AU7SRLF(Z!I
M@L\@PSL1#[.C:!B^,VOC63=$194-)B"+%^_EA)52U$XWC#@@'7UW@X"$3 T/
ME987;_-45F_GT5J+: N3V!D^E?OKS+TP"2CP\?2J<5-_H76^LM ZTT7;I+OK
M"3=OF;S1N5P&M6>*27<*7]E21IA;<#F46EJ!)?GDRI'?OT%LK4[J.+2KWU4-
ML:K06IU\:>26KNHZ^$NL[.INJ9WPZY==4V_?G6NY7BWQ_!9I;,Z>A&\*S9;Q
MS?RNZ!3:+FVK(6,MLZOVPUK]T+^0^.Y,[V-3;ATK7\==19)D] P2&''EJVFH
ML6PR 8-FD=SX%5!]M8PLBJ\NBXKRAZRB%Z2ZW.IJ2(ATAO>P-$<>B>ULZ>TK
MT4Z$G.UWZGQQYZ7.#"HNG[$0X[/IO<&UWX&5Y4\Z"OES%H(M)&J2+6I*7]6Z
M^)2KGRW3^"O(] EJ,X(^/$Z#[U87'H8]9>_/TDYC-LG'YHAY[D9Y;)A[-^_9
MS<XZNW\?Z:*-_6\YTV^HX?V6E*4['>_3"U73N5K>)V)9S;QOYSI)I^4]U#]%
MV?%^>5F\M.V2Y1.Y')_.1%3\OA4\D(^H9M'%+7'U67Y1S6(ZUK6YQ?4ISOVM
M*#EH'?;T"M?UN1B?R'X7->_':LD%ZDE=['-KGK<2B>?Z9R)ALX\#!="' 7 E
MFYT.PG.:C/YG ,@M&Y%(H8&F3+3BB.7X>#;$7H<SL3CZ;,AMJ>3W%L@3I 3Y
MJZ5:DGSZW_\Y/N;.%5F5_N5NQ8[\"PWV;LE:"PT2S_WB'D75@O&XXV/&Y9+R
M,3^'T.)W]D0:+W"A$OW95?;(8?Z/S^JGF"H#O>^WM0&N*2F=]7SNZ/3\V$TZ
M1K1?'/B;_W)Y0VPJK5_<#>)^0M@;'4@H)-QO_<->@S\Y',6XZ;__(%+[4=V0
MQ;?CIHR.!!J\CW>-TADMC!'99D,/<SE(+9[1W9."V9()N?ADRSA['/1A>V;F
M>^;VH!1C. FIQ4 I6L_I]][O*^WZ*SX+*4'PF\Z"LXM'!4H1RY_U^\.73$%>
M)RC%7 @@#)3B.7V=/?N0B];K]"D&DGH/2K$'I=@D*$7&P<B.&)3BJ_X5NVU?
MBN_QQ!Z4(O+(A+#.<OHDGXTGD.\08GNY;=Z.2-W\M6Y<G,]E$WPJ^Y>@B2SL
M3Z]U,P0^FXSQ@A Y*(6PNLSW :70'P8O]]<M]4\SC)+%G0:E&&>;/2C%^N5F
M:#3/"(CDJQ;0;1WSSBOQPF/=>)+/Y:(IK G!B T$I4CVFOD7X>6BT!;WJ!3+
M"L#P42G2<P!&;^>17*L4#!^5(IGZ:PH.(R:FP O):' ITJO+PP!<BH38:GYI
M?V+5MV6<^+\(EV*<=T+&I8CSJ3GZ&6SG.5RK  R7[K$,TN)_K?P+%Y<BQ<<S
ML_L(+2/^<JN+O^FX%"5#'CSDE*=:9X]+L9I8C*"&/\UGTQD^DUM5M?X5XC$2
M7 H!N<SIG:7_RF(R IK&$3W3O! 1IF-\:7D9@$O1ER\&#_)-M?B6_JMQ*80(
M*OUS?'(/N;,N8F>0F;W%I8W1R+%P<2ER"2$2H95?66BY<2G.>F5=_E.X_Q"7
M:6CZ[7 IA#TNQ8;$5@BX%&D^/D>#UNTD]:I":W7R97E!6-7#GP*7N)I;.A67
MXN8EGBK<)3Y''V%87<$K_2:X%.-F^U\(C;!YJ?<7$W_.VM),+HJZ\.SJLF@F
M+D7SX:EP5BJ>"=(>ER*0\2-#1<CPF=2NAF#6*GK^UAV84_YDXULJ?]RX%&?&
MY>CL*R%E7I)[7(H-U4)/J/252_3CB3TNQ4JX%-GD'I=BO;'_+6?Z/2[% H7B
M'EP*HJM&Z;O$7<<<O"F76XU+(:R(2P'I)5D>J>EO(GO]>" 7(2X%Y9;K2COS
M?)XJ]P I]+OB4JS(:QD^'4OSF3G2.7>7U4H+XE)0]A&M]_?2V]N?&ZN[X[@4
M*_)($FZ1^(PP^]XS/%P*^J4;JR<;2@L  MA^9O.QQL@21WKLZN(YG566KD1?
M4S7]$M7^;GJ]6N9 :0\]DZ9/*!JR.-&0L9.4HH6Y$"2-+&UP>*"W$5LX HN3
MO_JR9LK 1AS G?S+_2_YJ'W68AG767,+NT:_'^O'".Q+3(@AO],!@%'?*A7Y
M,_;^5HK;!\TCFV><!Z\<=_/_N:'W,"Y+3$#_-]"7P6@QD74F^^</QQ)\QO>"
M&G, ]P..'G<\2:3<;"()-I&H-"KUWV/=WKWP8+Q&0R2!$&D9<1%$HDPFP2=]
MBTXP@7Z26F"34S2,VX%^UM#,S &'&,]$0\)?N$%7ANEB88G5MCE _\$1:G@.
MO:OWY,,#& K]A!;913RJ?,CT+R?AHF\$',YHSV-H@F73"RGB!,K# ]C3H2P:
MG*Q)V!!K8:>-0VH&! OZW_$CX\;@R!NR6&V#KP<:VS+?VP-Z9A)P4IK)?#GV
M\'%1Z38=LP^] MR"-*8TTURSAP]0IK'$_*>C?'/N.A4PU:/3Q(F?)B4R0VP9
M,N;KEHKH@V@#?(V\0!8EQ2N 8U$7$<%X+G_&%41-E$3N4S0Y23'[NHF>0@.
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
M, E(H=%W%LU_=%Y 5U(@0@!^S P(HU:AX&T319K S(1D"K/YUBEG= U%HQ+
M@ONPTS4W1*'D\0@NQ#-9!E5#O6<HAC)P.B3HXQJ3'/**JBI3."2#@^Z(/EM@
M#5+4WIEGDV &+2$IK;[&B[="#Z+>RZG@A7UT"JLO &>^2/]87O[CVXBH7-U,
MFO/EE7B=)H!R;K3<=@/8A58NZ(449;L6N-' _//F#H/#D[?<%X#1@$RV:!VJ
MVL=H2 K@'LAFVKCS+G1UR%/= 3P5K >,,J#T4$ X%_A?HYTH()WQA(;:Y\)F
M);PP$A">#?W[R\2^@-=#5B>,,:GG9]5*OOX \1.C<4<2M8'16!<^\@Q4!! ]
M0 \=NU'&*@QR_(1_,"6P M^ZG*%2L;:B&!\?RR-.Y&%>4>Z*(_#9CG'[V]CE
M^1EPD+MC ]A@M-[E%O3P"G$Z<8>UB@?P>7N'](U6N5"F%@-L$RI=W9N[%)&E
MM3)+KLXZ$7H]P!9P2(UJ'W:R@Q2YT<D-<T<M1K3%(4];FO$2EY[S?Y;=A[$1
M'(*B80JXAR&F1#Q[B3VBK+8,I$I4N^.AID/&U)#(Z=Y2*0D:? ;\:YTS<SMP
M9DXWJ%V2>:<VSA9'HC;.#Y!?#%Y!/YOZ;X._$L.UZ0&?&>?$=*JQS U45TUH
MSZ3)*J7WY6,;53V- 2!C>Y6*AV5G^I)TQ4/]&[$S4.@R'/2D JVM"@;_&5.8
MC E0B$\YF'P&*K0SPS@XLZF+@AT2-S7\F56F=D#+$8C_U]F:"I&MPP#01<*R
M6:!49]4KI3-;MF3+ 9*C#,J:+H!J(&I.78MF)I$O#X332WS@)NI* C3%P/5N
M GF)$^&%RN -B%OA>CT1]<Z8&--W9.B=BZC9_$20P740?)N!L;6F'A@X%O#3
M;P34DL3EP Z@3L#C(U69B!H4U?,S.&]!!*_IBG $@S5;14-?-4)<+G;!!0".
M'8&?-+-DT*AR7W"C0PZ*F&RYAC!])NMP@AQ\P6(&W\9SMED+)LCU_ PH-5-4
M<,QV/T0P'? 4,MV*$<8%LLA).+;L*@(O=!!LI8G&CSWH?&LB+X(KLV!0:*RJ
MPF*5/% 9 B^#=^(H6*(8'S0(PJ'14#C6!VO7C6,29/"SS47O0$\7?5I9C$T
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
M]'WT&\&4Y!S]M%I\[LUZ)$UR!ZX;/,C1DS3.DJXYXSW#( &NVVYAD(-;NM*
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
M#=YDF1]_+]:TV#[*GUQ>?^T' R_ N:Z1 8$_HW]K(B19>UX<2;F:_LXVLG0
M7EZWWML8&(TFX<RUF-&0Y6KLY:V'X6L8>/!)NJC9W*M"\\C8/!LNF]N3Q ^"
ME>BK]Q8*6JRU>1&PMO[14FLWTV8U"&L'4M-500-<7E;4OC@19/ #!EBKT6C$
MI*O]'0B5(H(>2'1K_^EM:)S.V=]<@Z#REZ8R>)8)(GV__#KH#7-+@%_L2J<H
MC!2@8^HRU#X6,W_D7I@[Y?,^+WU$J*?_8"Y1%(.QK05#KH8<O4\4*5 PR(NI
M=GN3/[;S<T+1&P(R"\LPG4JJ?9#?B8"_O@_.[>!"TQ]9FL)3CM,!]CNT7>_]
MI?9<?1TQO<?TH'G5B<80KN^!--AG<7D79-Y^;?<F !F0]]#G,%X9=R3!5YQN
MQ[>$<_'=4QDP.)&F72H.?)#5OU#^LTXEMDA-H%-9B/Q_4'+.R-.ME_O9\J"Y
M7'O>[$W9!I_BQ+&4\,1FU,EDBPF6&>%5N(?FEDVV=^3:_N'VO,%7\X1>[F=>
MB(23?#V7S+;G+T)6;O'D9#+I^,HEUQ];S5:N5JS4KK!\KIJK%4HHO^R254XX
MH.'(E_M/RMG7Q[JF<S+JG69! == @.$GMPE;"G]4+'Y,W].?>6IP8BG\E"UQ
M7^F,"Q.-G[[UP]YE>(E[RM7IK;0'850\(9R\9J]<3!/U2?FIJ.5OX@HI<;_6
ML8+_^_]8<$I_%N,VC%6BV<]1)GQ\!I<(,K;@4JC+IL(-4N8BXTUPM07.2/<#
MW&MU 3T._M57N65%TBA;K%>NZ(D4!++B/Z3?<>7,1J.1E%@GD4Y>K-/WVD/.
M#S'Q\Z2M.U:NS-1N\V\*S3)QZ<[N47 H>\0<&G)JAXC/HMLYL\;1=&H\?AR%
MJ3"7P#ZG^ST?Q*R'"5OS!,2Y8M=\\@7ID6$Z$$POV'Y#"2NM]2EPX,&@@2<"
M3\-P(.W4]B8$-)\?C&SH@MF:*I9@=INCXDS/#:]3W;A,AA"#NQVZ&B;I!)J0
M:$5GP26!840L@3.9[8*3+&E!5?6HJ!X1006_MH3E(==ZSWU>URKU7J1N?\]5
M0NPE_W!YV/]RP]$?#*TRX>RV5OSH2N:@W.8^;OX4I35\\KF.6M]?6.DXA=5F
MW#K-2EVJ?!8+]T1<QJW_SQ3=O6V%U]BWA,BO3T^!"@S]BCL$ZW2.L&.0)3ZM
MRLU][>8SG;X:1&KN!O]0F5G2>@\$JVOO^".3FL#^M;/4I..4FK(R5A?S&#\_
M^W4RE7\H]^.R.>(_4WZ65 \L/JXM!H],>#*A5SG$*#SB9&%Q,E?COEZ]*C:^
M#@+!?=]+D(X7Z1F]J"[..+A_Z-[%)B#:<_\<?T).SZ>6@+.ZW;1$(*(Y*X^4
MA_*8SZ7":[[038EZ$ 'W*HAM*3HG'8=-BQZ9>MPQCD-7\SKS=<&%KPMC515@
M"ZQ:!961=/CWD?R>*V='XN'*2+K&HK"1HD("'+^2VU*,X' @44A@ALC@#+'=
M8?PN$]GY9/:4_4R6PM,^<@WAU(*XQ61JBMRUU &P=EU5;=(O;RF-"=G:^=<*
M9E'!JEN[C2@G4XFP/(\HM ',-S XS6R/OGQ7B@0ZGSUU @$T H6GR-VU0O":
MD2.#M6\I<;G[Z$JOM]7B[+Z;\'H+AQ*7C<V%7_!2D;O*4&AQ7T51ZTJ*-E;=
M&B>N=1MV_UA[7KCOOV6$ZOBUEXV'Z+\Q#4B0= 'VJ?GX#C2'@* N 841M8W=
M8& [@F:UE(4C"F*H^#!_"2>WPU>F+M.BO.2%X-^[UK(IV#+62H#(<GO>4B6E
M^I*[G=Z1/_Y6:H7Z70EKY5Y*BTZ11USR!5NR FJA_@$+!C?[:><%6>B)NF=G
MT;1C+=C.;VW/J6E=(-ZDK,H*$<B/UUF'<7"H ?=(52:B!FTG;%(O&@*F<U^+
MIM\_.\;>?\%&W+#[K2IJ JH 1KWW%4E"O;M_'TP&CZ)S<61K7J_^ Z(_>GY7
MQ=G-&]G/^JK^:SS4GRK-2KV&E>L/V%)78*671JG6+&$_\Z5:J5QI_3J-+K/1
M=DW=Z!);5SO-^>>D,]?Y/8NO$E!51CHVAGV2[KBO?G5$\_3^6PROI,Q>(F$&
M!,H"6!0G;6CV]I K5%JE_'PB7;7GU\\#GE6'4_$I"/INISZQ3JZ_N5:HAG&L
M9ZPX"A1UN,U.MU XZLXJ!)XB,G@JO;VSRDFTE@U"[=#:H1 XE8+MS*BHD>K4
MI@0CU'!.YJM*=ZL<5WEE='_%ECDNRB3OFL"BT4Z'37_X(E74 DDS*3R5Y,:.
M$9$PO*9E61*GLM& VC,.IE%1!?".+2)%";>W?.YAPK!!<DZA!)I-^[]J)8W%
M'W^.PY_6=SFJR+N7$0R>8D-,2IT,,"+T4PNO=1F!D^SN>8,]8!GI9>=:<^=@
MR^;0IJ&^U"667FE4X##R*E4JU@GIH10$S!C(5!_&P,"NM$NRA"^Q[L.YF"SL
MMKS=/TZ60?9!KSUDQ9U:64 MPH>N"UA29DG((M+X(, )4NK,$A2[<#2+S9$N
MCDK/5Q'-+?$M_95E@% U%WS\VML%5P Y;^-XHA18.$WY_WY<;/(BG8%V-T1
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
M4^/FAK!< *:@>3[^!+1K:5K.;D8M=\(U0^KZFOV\^P!)6_\O#92!#>6PXPE
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
M; J#? [UJ.V0 5?"I+YAMH9&?^$U\5.AX*F&?@>FF@<BXI_YC<I"""[0>J+
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
M-^LF:"-VIW2AGXU.$DB=K[ N4*" N_K@XM89:Z(L:!J*Q6I&$Q^E![04N*?
M_X"/X. A'=-FT"\!3@WXT,)70LK6*/(VFC3,X.O/S\""N3[LC2&,.-68@]41
MNAQL>2%PP(-8?*M9!:PMOPV0J3N0%4DQ?2! 5^!^0"ZU%AT/XQU3H><RLP;>
MT@7F!>F!>L_,M,'7F3=[K:44;-TVW"I V96D8M"7MN>9-[:CCPL?[]F/>.(?
M@8_H5>#4\S.7I'@<=[F("UKO'NZKM2\E\TYQO@I:'TJ-^D,KEZ^6,#.6<,BR
M5FZL*WZJ6K,P6&]^$H&%C(]N5+JNQ6"<X6D.T#/'<UO#; 8 F8%]0)K^WP_R
MQ^+4Z"S3=@6#-0P%7%?-869KF#!P+]W @2WRCWE3]UK"N_I9\[=6OO%V\LZE
M,I7:FTH'Q&P9"8X??^&B=J=1J 0M!B4HN/*$1$]!:-Z61]<T.Y#VI">\4"62
MGOM2B*/5CR'U_,'U]J20W28%H)0!F]L*8CV,ECA.43Q.AC\\$_K 4@=C0]^;
MW_%=!WZUU\?M%%VHLE1V$T4''5S4CY?KZL^B/K"28*4O\PZ=@W=@<"%O<5_M
M>8'(7+6F1.7N]8?W0>W73H->[V&QH!B"WL7:3H-V::?A!_RW"W%W+*Q8.C_F
M;U8,3%!P4IID<9HAMR*T??>+^$<?TM*A"O.,Z#1.$22>2F6^CRF48PKK5%@Z
M!83'"=<70K.5I1*WMWVV((DEHR-A>U[AU4EWG!K*@P *VJW(T%$3+QK7F=T0
MPRG:]:C(ML<-X CL"_'K8B#RO "> 90AQ:^.*A$9FOGQ]\*ES<VVKX]L[9X,
MOG:(2= Q9!:.2]W.RB=(T 31SUG^,S;Y+\*>P%TC9EE39#-B#7YHSV^9UX[
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
M&?D()KV,9)-X,]L3&<$1OKNK*F1>O"ZW=?L'A0CM=0AX'S-F^D/#CV/3I$L
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
MO49]A_YL[^YT(OM>A/&4HCXL'VK3Z=%1/$68 1U;X^/2A;6&,85[S^_58XZ
M%?390(9=&CJ+?-BL!QI@=X< PBRO'Z.%)9M%FEWO9T>0=<C>+<0AXTX +IKO
M]5@(/+H?>OOX7[,(.)QF!V1%;C]P1'92=B;H"TO>24LSRM@N5F@+T0K-W+8J
M>X?CPJ] FU5HX[+(G*3P'E$9TRRUNT/[.#+Z.&<EOT_S%U*III3!5L!- 6P-
MQ9\0F799$%G=M)S8J7%@*A#G6EUA1W@G '(.+C7Q!P-&LWQ)Z"RP9166<)+B
M#9H4K)7T5"P]_3,C3*QE.\A:.> 2X@#IPH ]/*V\8X+#L'JDF%OZVC0PVR.'
M0H?GY%/8PA'W7).=]95__^]QHW[T!H\/@K[GPD9+!W93\1]H/\W@57 LIVRN
M_L28AN!1V/5\&0YQ',\5N$L]SR>&EZ#W>N2GZ-50/^"3@RYP"BU>,H ,XF^
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
M].@Y*%Z 3J6=^;3/D6U)V(QC8]S GX'\Q$G>/T5)7#4,E11R@9V),EO^F_U
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
MMY=ODV_\GUR;:+=!<SET\51\-7A][O>O; \+;?X 0!1RZ""V;9*>J1T /WH
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
M=0P75,-?5GYBM2( VH3[E+F#\?I$-(CP'\W?#:(_ Y"[E/$17[9R0QP.WP8
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
MVCZSX&"NC:P[&-QY#ED$TZ0I[\ H8X1WVOPN8WA+RZK*$\FMOD9L+>>@$+;
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
MP5FTO,49>>;Y4X\9KY8DU]V[H%=QFY/,#+Z;G4PM[YU& T"*&<MJE<OG+;O
MM1YI^-M\SR*!M9LP$CFWUW@H8':O[^@)@6&-"IGL5O#B%962UQUACD.9A1_A
MSXTP>1% &EH#2NU#7#L&J;HJIB05.V6>)NS4"#,\9"\90JRUW,4C65?A&)5D
M5 %!%GN<8H12I8DJ:W'41:7R-><?\R\)SO(MV?-]7YP7"_I%MD&.S1G8[55=
M\6MH96J2V>J!8-I L'VZ->JHUD=U :XROD]^'2_4\Z#60V=3( %0,_MIGH!H
M>P&.X'!0 3C3G<:TW1QRDN \?\2;76T4E:Z55L?+77,Z^-+[YF0*W@DT!*4P
M2%4BUQR*JG>H@ZJ[SYTY+3)8C7O2?NB]A56(%*UYY<V0Q4B]]7%\YFRCHP^G
MV=:H'X!HOCX:87EZ,?*[8]%8CT^8G3/>;TFHW+70R+K:N3#"K7<OE(+>:6&#
MKD^3MM@UEJ9R'/YNDS[3KW](BNRU)$SURY$OU1_^-A[UJM1^X(()(A#6[,>_
M>F]C 8JPRC!Z&-V.KF*H/R>DP-5AX2")1D]9&D1*TZV5=F7,+2#7YETCZKW5
M[?#UJ5!JU&>U^85M7.DZX\*PGD[QR8G-'KCLZ4<@[9[^^=%[FPM0A.9]F*XF
MM^AQ-5I-'KT,\??!?Z79^) 7Z0YGLKF:2LC5H*X&6(_FHH3WAM?"$LQ])7/5
M"'MVX+H!H_;5I6+.W'8-R,:#E\AX;VX#,,&OYZ??&UDWT0C&8 1?L0CZ4 1
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
MPEX2T$H!2U/0=B3!,$@+3XB%_'F^7+WG_MYL^C!A(;KCY>1VZG_EN'VCK3$
M3B[K-.Y-![<3[B83!$,>'3K=5.'&/V&:%*4#XDHT&E[2P]K&E2C%P1#)C%&1
M.9:J !W2)%4RK_KK5#Q3S+#.KY:'3#*SESV>WT_0:O2? ")+)D'&KLMA]V_Q
M@X:F)0REN-.9G0%T9QZGD 7#( - 89FA$D=4'G$%2 :J7QGCVH%:WB>A]"L#
M*F&PE+*T2(O)$CW^/%KZ#] ]&E-^+W8K94',4I>,T[S(CTD-ZCO=38L$9Q;J
M=#'A(A^@L^AP5HE@J'V1:@A34*;P_H8GLZA4T"C+V(63T$+PK.M_TZZ_R0R?
M72K(OJ'_!"=U#GF1;Z]W:.LA=(_5?/SO:+Y@)Z8!>*Q\E=MJJ\WG3IIYHPR<
M;97"4FQS 3*)8AZ;A[3 ]C/D ?K.TS$.J98^:Y%"&0SYAB(6\C*.%M/5:(:X
ML?+.27FN)(/1,BFY9)]=!=J4TVN X9D5S#ZYNDJHN4L(D!444C9:VS\K3:\9
M.^ULGH4:&!;:8Q6H.']X/YX_K);SV8SE#)D^K";+R2. '?M'O&'NY!+O6?:X
M9&.ZJ5$I[G24-8#N#*H*63"L,@ 4_/I2'#7RD.Q9ORX#_#D;39\<L_7AS&I@
MF6=OSQXGGUC T>3V'6IG11I_IH[<_61)[=O=?'G/LW7Q&/,)-7[S^^F8!8=.
M'FXG#^._^.?JX2G'?S_0#S!YMEB(5(N[O916#[I["ZU<%@[_] #%>V9K<53*
M@[)\O;H8[9U:WB>?]+9-)0R6448[]OGF<?(?GZDI0Y-?0$10LNN71TG$_L,F
MU,]!S.K!4]2]FCAEJ>N27X.JT^::E2(8W@U!*ZR!L#NR6;0Y_Z&E?I73-.TS
M'7I6&:5=G:BQ@%R?J=&(>N>*'3[A-J=+GJ^Z7(X<.X.D%O>2&\?"[*ADO;/'
M$J JZ1)+!<UM3)H7*%VC1VIB_--ID>$=.>SR8V:R41RG7U@^]+LTNTT/3\7Z
M$->7,T_R@NSXSEAY6B*-TTWU&10?ZX+ENTUJ<N'/TLUX<J'"P72)2]=(2(97
MEX;6:8;J\E!=((!>I$@'8V>D[=5!)/:Q,.*VNH 8/ BP.A55H_@.\42S;&LN
MEV=*\4[;Z6X?D(R!G6>W)*<>3A#/U^P@P8P\XZA$:>EGG%244Q_DC,IV_),3
MR@%#\S/ "WY-4Q3S9E@1[WD94,BMOO U[][X:LGP,\ISFD+WW&IWTNN>6A@8
MPI];@S[KJ_)07:!WFB\QG5X<^ V#8[;53BOW*RFVXT->I#N<V7%[:"%NTXJ?
M4L%NQO$A)8"A[DFPQ3SEO!#4NI[N*HM:K;MAI\GD)=RR(&#:6:H[\BP6N@:7
MX&KQZ\2JU0MB ]6]T^]TS-*[#E%9#"()J@OBD[BZ*.\&5!7O:[G@;ZOM=,E_
M6)4ZB_YVJMY9>AI>W6V<8\O;.)V1,L-;BH>ZU.59R;)&]JRT4W=-RR&5ZO/2
M1A<4,0< [C-S7FQQACJ%H+(4[]SLGY*SHZ11R^>Y10L"&E3 \,X.I^($?W,V
MUCO)/N=XOJX6BG&NJ&M?R"6%Y #;C.E*@"&(%%:?#U2(K>HT8M[Y<!>0C-^K
M/5]7M^D$\33)B^RP.^[SJ]8 ['2=KM(,J4YG1<9&$0S7AJ 55EJH+N+*C(F-
M.FKI>V<E'9]WI,EZR&;IU/3BA%UE:>VH61?@V%4;6+&>LV:I#8:I@R$+,41M
M%>_$;-*KV$:)J,2])+JQBA*1RX(AE &@.H42 /:,65NQ%4<^JR;Y;^,,1Z1@
M/RF[CT;#K>$R0N]:*J4X&":9,0J+OO01N@^2H,S#X)U/B@2K6J?-H ,@(:[:
M2=,J@.&5#4K;9,W>*::YE,%N"!Q2 )!K-BR&27MM,+0<#'G8]43>F?J O[0N
MOL_2A/X8XL;SY#LD^31IRQ#J5.XM;O*]3-%.C\M?\&-T#M5?H%PP/>*"E9%=
M8\V2-C6JJ%O^=?:*PRV.#C&>K\MQ9+Z^Q?L,T]D]\W!6+'Q4NU$\2-W9+O$)
ME6JVB ?H>F?EB8"%K;?QSY/;SS.>M_I^LOIY?LM^NITLEI/QE!];O0[W#KM=
MD+W.UTNRV1;I^I"78POM2#Q<<T:")Q)3'\=,PU-+<L;(\ZK:D/.T8F#P]"SL
MXE'%^_O1\B^,I\OIIY]7[^=W].^3\LXN?LAZ-AG1WV?3T<UT-EWY/V ]P[2V
M>+[';/*8;+IUO@^*0V9B^EDE.<WB?GI5.SG>AQ?CG>GG8]<9Y\\/M]/'\?PS
MRS6 ENR<[F+T%QAWG=3G/^3'3LIEDEF:YU8,/[4PER0_K\)MGI]6$ABJGP5?
MQ_;1F%/]D3)]/)G^,KJ9^<_J>_2VFJ.'9?AQ845L>W6G:0\&5JJ3!<%2%PQ=
M!P+6$93=-?6PFB_].Q?*(U,G'W>#=M#MM"-N\.AG#55'O.-]]<T=]4>?]^?Y
M[-:_/W#L9G<D(07FYY'ZBX@#;>: DOR8S\%5E5M2ZV+ L/IT[%J: [D_O#UD
M=*M$.W"]Q#UX_+<NR9<K,+"J*J_ LAB 7!Z*7<?EWB7CMY.[Z<-TQ18H?IE<
MX=;QBW$^U?7HNP.["G:T8PGS_L'7&R<O+' ?#^H,EWF%CUYRR8\CZSZ7*!]<
MO[I@I70=;O*XFMZ/V$+)W>?5YR7M6/?SY6KZ/\LTC)/_7$P>'L^>3QKV5(1K
MP^WW4TRJ[O=2["HC[J/H];S3\P2P.MH!O/G]6+N;0TX2G.>CD,XZ<GX"-;]Y
M;?UF[[\,*<J/ S.\LG(/QKX<[UR^ '@=M^]&TR7Z933[/'EDOZY^KKT5-!K3
M>>B2VEH^"ZWV7*94C#[_?#^Y]=X'% %6QI-21C4 P6_ZLU(&'3"<M02J'?(I
M"5=_J;>PCS?!>V??IX D; E\G@S@GDG):>2;504ZT6Y:#3"LLX*IV7Q>+.=W
MTVKQ;?[XV$GUO9S,N/^YFM?,K'8T)I<DI]$%#9)Q^HR3(!GH?VKT?#B?QFK(
M/$^EDG<"#D6J]SE'#V@\_V7R,(*U7,;N/V^=$;/W+M6*?GQ)4T7DGJ-*RSOY
M!D/5L6_^>?6XH@:0W>1R,YJ-'L83SDA /&1G]].$58PMZE6'@:J%A1N<X#49
MNGU[0HE^F'MRU>64'EP<0*Z?6@?#CMPOTT<VZM/Q'QVO1Z\7FM"W-Y.'"745
MO@/4+2;K-0Z+)B<&_0K+H, L/542DM@B!/@R1?KI&*=77MXSAI<'L&N<7 E=
MWUBR^V[&TUD92EP&3M3]8P++75GC+,,1K7:SX5,'[1$\=+=Z8&F^')L3JJSR
M=@84!9#[I^#7T?YV<C=9LC4Q-@Q4ZV3?MM;&SAX)##._AS0YQI_2*>XXR++7
M=9I]";)HR$QP4#GN9X8G5%.<*0XHQ#MSST6NX^P#L\^+R9)::NK-\Q6-\6BY
M_ MU:GX=+4&%%?63*]T$.0EIE[TE\:%@O7B8WS*L-$\NRRE55G@K0XKR3OG+
MX-<1_V;T.!WS9;S;Z>PS6Z'CY*== 3W^/%I""CP>)06)6#6IF_:(0W:2@ Y/
MDY<P/D0X*E/4[O:'@CMKXI>R[Q.7>Y&?[G+I#R7O29=Z"\!.=N&J:6/]'U;3
M][SK37^A?UBPF0*DT:8V,BREZ3$W*<]9.M^7*<S9O,GV"-<E"O;3J<[]$/).
M=&JI #O-F571=9+'U7S\[U7G0*,Q[2I\(@&RFRR"5[:2/&)^:+OR+(L<_R)T
MCG78E7\[N<N<\Q+?W>?\#V3J2J>_ 72W.KM:UEWL&.]2QK%<9E0R3-MO25YD
MY.E@[AD#]-Q/RRVJ(4[#-4K>*3D4J79I:/JX6DYO/L/P<KK+N_-UZ[*+ZD[T
M?)6.:3W3F$0LJ[O)5)]3H-OK3,ZM>/=JDU-+\\[MBU5!OPVPF"]7[!0O>IQ\
M@G%J_=BA6U6=O!0X2X*XOMTE'Q5E7Z?U3>M+C-B19W:/Z,WK)YQNLF"_)>$H
MPX&]&W.%-_KQ::[VZ>0.SL5?!Z;[7;^.^O[YR^2!NCJ?)@]L 9@'J:'/[)#2
M+76+Z!\>^?K8>/0PNAT!ZKF3I*"3J5])A.F@',9I?LCP/.E^A[QWK=XTF281
MG81%AR 6OV'YHS%-H5L(GI:<G7U<Q3KUU=\/L/<[J[3I(,O[\G1B'>2_9(%=
MX]HTE(: VX2VE0!D&=1G[9G#;FP&D[J?'FE7*7EOTNL"[ E6@-47 ',UGGNT
M441_Y:K_RSM-E56;D01/"[Q3W;1BHP@B98=0$:N4'8T6&#I:0QU(1*:.N+Y_
M-CX>GG(2$9Z@;T9VA'J73;HRMHX=)*_SK'JP"+(BH8[HENSG7ZH?I@GU4G%>
MJ'KTQ8IW:G0O_%$Z1OE"98/I)1>ND.":-,6CL"P-I;4J(I4NRH+"_WU9]9E+
M6NLGDO"E%+9F0MVY\MX ?M-Q&6OV0?$QAQ7ALD^<4KDV[X?H@^'V":"%L8#B
MV08Y1ON,A&=S5+J',$U"-C' M[C\[S0I;YW#&4LL'6SZ'J^ECJN] VOX];Z!
M4<$[?X:@E-Q"P^515"FR:WMSIHKVC>Y5>+3$NX"P2([CD4AFI2,MD6R47#')
MO@(UE<P:(+AD#5/,+5\I4A+5FGS\C"Y(IK,'SGN2I"PO;NT*-+[!L7XWK]1W
MH#\J#/6@$EP.FR=4K3UJ#E#W3M33,?=96Y=P].^.+M^1MNCI%>UY,5>QANUL
M^F5V@L\YCN@T<)0DAR!FYV,D/=5*RY4]'%"%VB!:J'@GVC"<?7*U-=&NO$3I
MP"X?9[/T@&O#F$YT5L.B0UA,DW6:[8YGL6Q6T>1ZWE8P==50+EW*E+R3<"A2
M85Y;Z;&+52M-U%*%M%S9JY7%.J5:P_$"I0EZ;V52)0Z&;6:,DK5(D5N05B#K
MC&N*&A\?NZ1.'U2;)_4S,*3H 9(,>.PQ@(9NIYJHO4,V4C\6+*9(.<T\I0"W
M9!E:L2Z=;+4!$6X@9)&23P6PQ=NZ%HO@E0V\U=4 U*%\H 0H?U%\#2M-MW<X
M6U>E>YVS40T, ^VQ]JDW"NESZNW7[+O*W'%>;''62B<JF<"((JYFA2IP]12P
M_]Q[HVM ]5N7BR':LCL4F8>]*_;!<9H7\S7+&L[2"3SB[)F$.'],XTC6]=32
M?_OH]/,_X^PIS?%,T_4LL/9;A:FP>4X>Q.??K"[M<,+]W"LJG&\I*.WBM9V:
MJXXYI!)U9[71 =&!!P"5F&Q^T13*FINFWJ%@37LY"NH;IQ"=W:"0WSF%XC3/
MWT%:WQ9ORGK *F]"(>OWAK,67/T%9E30.]MLT%V"8MYI)<^<>XOS,"/[\B!'
M=0MQ$%=G3PE6S;-/+<Q_'F3;"INS(YM* D/ML^#WN5\65B^%'_<)WU$7JBG0
ML1O%E_B;&&A^BV8^>J(SSB 4_%65'!S7R0JE&/C$[\U%\S7B-^>^3]?O#SE&
M/.P;4=<+\8)0$VSER=/MWG7*H<[7GZM+?F5]3ZO@N-$H%))&CT60%3J?UPZR
ML/G.Y)C?RYHMX-'Z[] 3WI"$[\@_!3$;5KP/(]K*26YD.>4;28MQ.72<6DEK
MXDK*<,/D/Y5,3O"&+;V=S&(U?MT&ZM=A<W[T8',FR>EMU0"VLC@XB>":FV;T
MLOH.+6E_QD. K"9:(PI_4.M#[5.K=#;B6NH* YET86=6ADZ6:[7R 4@MYFKA
M1@>R]E)E,M[G$P9@<@XT^S:X% 9F4:HT,:IYKDK8GSWI U:;DUH2MF/10RD$
M)%2/0;@.)]ER'U.40>Z""-5HS>V=!/=M,U;O6>HUX*P #,0KK 5LJ7/^GF]K
M[9F;#L3Q;O#K-Y:-2F^FG220A9Z5)AO +37$SKF=%NG6.TT(^XVP2HL@?HM+
MEFX_.:7I"0N6JH_>1+3.U^@S'4YROJ6"([1DATYLAGTGWN(,TWDQ5C"J1GE[
MP _XI5A]P?$SOD^38JOR)T\OSJ7'>6ZEV^;BU++ 6),S*]#G/678CV^&U7_!
M0;;ZDI[Y99I2('*X5\53J%L5\>88V\4M(>KOWQ91Z3M5VPTGE .6K.UJGDQ7
M5LC;)&P+N82R?W@SE#WS6\ DZ#F\=.O,,I]?-Z<;B'KPG,(_%]M>]^0E9->_
M[]AOIWP0=5E@6&JJKC5E505!6V<]IQ)"FHG=GD[FV%YAK49+?+MK%;]_(RM(
M#5#CBNPM#O'N"6?HQP_O$+,#(&W/;44>R7%X>S7?%D56"9/Q:.N =KLD0(53
M$[4"BOE23V,28!S-$@-Y/V5IKEJ044K[#:'N0-8'47-1,)S2X[,(I/;/GSJ"
M^R[-;M/#4[$^Q#7.189WY+!C1UGXV:%C+97\.K4TI_P[K\H=?IY6%#3?Z;QJ
M"#2O2\OYJ8"H*A %58G^.5\!X4<B"SSHZ(E"QX?]U,*765&I JQYJ U4Z>2S
M81<DX\J.'R2TV-<[DI!\BR-^,E!1=96PV]/1.L#= ]$R23 #LQ:>> 1SMX\Q
MVXW;,"DXM%D&7^ZI[<Y($//SI(?]/E:?4C*K>:&2H1)24BETX-%+#U0(00Z^
MH%TMSG-JY96"I\6%IAZ*D:/]W'$@BG&HD&*3CPVD%O7>M95ITW6S-I,2B,3V
MRCF<7@-,E[:"*3N\[YU3+&O'[A S)[]]_(3^3 <U=O5C$K4/L"@KJG;)+E2\
M8R?YHA^EYT]?I&PPW+]PA61I9:KB$8 #4DKXBD%0)P\O.M,*K?I2CGUS*0>N
M%=^A!--_%2#V^-K\47R!KHCCS'@"N%YVO.8YF,XO 77JJ48WPUV&@_EZ1BFJ
MLF8M :=#C@"L,V@T3\&TO !),-Q4@.V"TC]&WMN=VJ@0XRCG%Z\&+*GL?1!N
M28*S5PLOQEK;L3,]I$J]0<E&%0S7AN&5C$],NUQ/)OD^S0$,19\"DLSHW&">
MW')(I$PN4EX]J+K$QJ3DDGYV%6BS3J\!AFQ6,,7K(,)TDY!_L&5 JN]_&9 M
M71:87V>YH+YS4N2Z10*EM$M&&2"WJ:00!<,A/3[QX"87>8="""L"+>S3I* X
MR5-<9D?(6W.Q]I3._!&L"_+$MX$555#1LA2(+!T&73='#UKBD+FLWJTU*0'A
MJ&+!0:_Q%KBGWJQM#&6"?:6?95N!7T@<2QV<ZAF\=1T!6?_+U@+>>^PTB?!:
MS8W)2Q@?V('Z?CL(^SM#BW&[O7E:);N[:\/* -/S3P0NWN97%X-B5@[+GE(5
M=$*"IJ^ML4$F^SNY%J>T/;QT@&U':K[NUUZUS&90<KI&:56!SKJE5@.,2;*"
M*3B]EH[NUV9: .;T.[D.UQU4W#A,NWU ,K;\.5FO<5CD\V029,SPY0N<\9MQ
M=7?:V:L[=9 &5JI#:$M=,-9G(&#9>;-2'57Z*$U070*B12!>!IB+[RSJ.S/<
MA#>L"&#,%2HWD+TS<)?GG0#Z=!;/ %VQIUM!$]/^6B:^.;=0(.M3 SZ [7JJ
MN41H"R\7J0W(O#C#:J;/CG-B67")KLF4<U)!;YO6;R!YS@D5TJ30.;DTX(Q6
MI=,YL:BO@-70,^P,K](=_;(7^SYE8;!9W:[P>:1F)8'QR<^"+^'R']\BEZGL
MY3X/+PPXEUL5/I/+5/8M<_D(7\+E?_;.Y3JEZWRMJ9MNW6Y( 2XY.[QB;9[:
M:X/AYF#(RNR^Z1J51;SG9:!C(>759#F8%3Q-34TK=W:J0*RL=J7.1@\,2P>
M[?/3Q,D+KL=)+ZJ9)F%6WJ12)O,/7\=I0KWY7(P\-(N[NKC&!G2=LUPGZYU
ME@#%C;12!9$$A942"ALM3_NE%]_ !A?H98E7MY?-QB%AV]-ORO\TV;1NJ+=)
M_J_0@--@ _'JK@1@RHAIHUK=4_=JT)=AG-JK2U2R<%K(&JGLHA+$+RJ)_+;'
MS2&G8W.>C]/=$TEXYZ:&.R<1+B^+7V5!DJ\QK4TD/; S1!]>NYV$7H@XIL"V
M;!P+VZK>'7!)W8XGD*8192=9DZ 5S?_W Z'U'"51G2^58$;HPPY'XR#?5J?H
MGH-8<\';M5_JTNEW\P$-G>F";X07D^6DOD)*%2KX577.FP.)6;B9BS[9>M=;
M[8K"Y[I6#VQ>]'5WO'XU^_VM?OY5]3E-=HC+O^:M]C15IHI+O^/K[E^:]!DS
M"&DS+EG76UPZVZO@I?70P4=6O?BM=CW]A[Q69Y2_U4<RZH7K7JJMNICNJ!1&
M1?!RO'7B*BOC%[5$S0K44_]<]'5?Y6I%_MH?JUZ$O-9[X R$#FJI6U)[\I\B
MXY*UUY[^N\:+WNJPI]ZDN?Q;X'2VJ]=1D?2X52++ME!M _T$?QRCY=2+MHN,
MA/WX&0?O>Y,CFNJS7658Z[\,3G=S5=5^KROOE6-;KV5'0T%5*DJ?<7;9W0=%
ME,4SS@M^A"LF.U9M''W>EULF:4PB6:*G 7KNXBX&5.,8@&&A!"02PQZI> \>
M)1AI"D"X*0$=:!&<8TT9'O;[6=Z]><)[4YUS[_'P1&E/@NRUWV1:8<=[D:K&
MLL,H9.*A6NSH8W#48V9A\K!@AR /GK:2V=9+\7J/BVT:'4DH]<84HC!3DIC
M"@O>Y:G_=^BF3B]R%6LLA[7$Q2&C+"J?2AAGI^;*%@^I1-VO;71 =.X!0,5<
MH4R(=6K,Q;Q/9U5U"6+F\?3SH0;#^I*N&)=3T5,K:39MZC*\,_5,X-*QZ=N8
MBG[' CM+^J(=+[;E6GAP'J[H]X$);!H.68S*!>G]7=#) )B<R 15Z6),DDML
MK4O]BU$4<<\RB!?!*X-S!"8AG5;:E3=A ;GNUQI1[Q;9#I\0G]UHH'VI8FEN
MG>6RS]D @ND0PO+SYRSTO#W*3/)"?8VYO;KK_/9#*M7/=&^CZYV-)P+NT_,!
M%RAG6E<Q5K6;<@34@BNF<;93<66V;,'7MLLD#\D9L<0J8PM)PG3G/WF>M@:*
MOF+0<6FCK."W#9-6 8PULD$I3$W8_0IHGZ5KXG] /)X)5CA_=B>[]<I^3G7;
M5$A^HENG"89Z@^#J3G*7ZJC41ZT"P!SB-E9U9CC*/:0 4&05*C:(L(WVVR%M
M'_*)Q)T!RKPHK^G\2X*S?$OV"TR_;U($&Y65':#O?Y524RWSHHA$&0QSAR+N
M$[>11/M&],H+)J<2[^12W"^PG$3"$XOP3L7S<&L6:M*&FR0I,(5[ME^JF!WO
M@G(GDN?'G1\*.E/G*X?2&9M:V-V,V 3X.!=628)@C1&>N/%7*Z"<YS).CRJ>
MEMS9@4G94,+^[G@QW>)(=P=5_^N&AK.?5_R*]R1),VHWIE5'E]B+F]=%H,J%
M,$ =SF[4.>#[35>7@>I"T'%@7UQL8+_ W53U@#!.=_L@>7W 11D#R"ZFG>^K
M^+R\3GYSB\O_*K[<Z<6YO:OJO$IW[QHYK2SOYOY"%5#OQWKG-CM\,4WR(CLP
M./=!<6 =\E:]:Z-3<,E/,_!NVAF5-!B.&2&*)\Z>"K2KY%!$!;VSB3M$LO![
MF8#3M2$!6&?MIWD*A@T")&'MAGN2>R;AO=F7^!DG!\QLX1+SZV#IP*\YY:N1
M=[N-8H#=W4)1"$-SS$Q !2)=8@/W_$ORPC ])$6^Q"$FSVREW(I)9C6G%^59
M5J*3:="@ \8B60*5W!'-U5#6Z-$?RSNC]Z6FI]E;%823K]+J*(\A]DPG#^#H
MP2"8X@W+I1(J4E2IM?< O)N'&4GP?#W.<$2*NR#D9^MUFZD:>9<&P0B[S2^E
M,!AJF1 *1X_8QE&Z1J4&JE7 ;(7*ZC,S['X:='RS2X!O8M@,W+:F#4IKILT
M[5W**G8?O)#=87>39EGZA22;<;"G3X13/J<5X9N,ILJ9N*G2!TU5 VC!/]IL
M,I[?!@4[YB@Q%F?X.8V?V7Y!7/$ZY*\ R>!Z[79)ZW![R"CJ,E'/@$^F+L(W
M@TV5,S%8I0^:P0;0TG4HS"_O),_4N8>P$&6JUJAHLDF=^&$Z)4"BJ:1J0UC:
M4G\S)!4Q"U8V20XLO4F]S\1(RNQJG ;7R:LPHP5_.@190-^(HZ6XGJX2<K4=
MKP98;\.+$MX)H84E)H\*$K1I)(V&Z<I]-J\9/%9GQY?)P=OZU:)4>>9 /)C'
M;9H5+.M8XY\IPUQEDF[W+)10NYL7@ICW?FK&)FYG4,DRU=M3(WN=' LQX3><
M' ,,YNO;=$='!1**:YP2 S2T &=Y%TZJ6).!89"V=X:=#%G(P%05THHD9>8J
MJLI!@;A^?15:MBMQEV:8;!*Q#N7IO(26*$L#,KP(5]0\M7(U.8?J@Z#GB:"%
MI?D.+]=E03):EA<X585YNPJH'<30]M$?BRJ'KR:0W5X;GE-T G8Q+*@U._'N
M*74K1*==>,07J*SJWQ;W%Q4D@E:S[2CKW7A8 I2NPZRI5+62Z)U!FMS2<A&G
MRRB*7,ZRYQ SF%ED3VXRBCS52<O8$%&6[YT<BRP-Z:R<!U#>!,EO&I+(15V2
M10>V$R(@D0-C3C3@!)\C/N0_H5H!L8_!E\JN,R-K V.+-G5F5?9[*XVBS,6R
MU73FZ ZK2N/?VJEYI])PK')F\:6Y)M7M%U)L3\E[Z2BVL<J\D\_7!CLE%W4;
MT:@&VPUF%.5\7.FACV-48I2EN/T)T3G6AM#I#T^HG*#%8G$9FW7^4%?5@P)L
M=Y[J@M%YPGJ#(9A+K^IT*!Q0&5GTG$X/&@4'8)93L@FKHWPT;35!\75]Y.LU
MI-*3XE-ZNSB) /FYQR0-MWA-$AS=4 NU)L6"HLV/-T%;IH:Q*L-/THT!U9/G
MW; HP+L#= YJ7?:-JA14%8-X.:A5$)B82;&^K>O,#;&3EKIN%XP&5*>[>F2A
M"(:O0]!*;C83N-FBIG6,)90!#MSQ=BDZZ?T\ #ZO+GI!%'/E3=C[=#J0<B<N
M+*70/LT\)DENXWZ@XG;-<)2$MV-BP G\+KBC!] $.;"*V+EQ,A4_7IL:O-Q)
M$^7!C'$6('4N&%=ZS[00WTF!XG!U*F/RL%3"7N*6I("EH4L=23B$TL&3!C"U
MZ>/?*[K(9BBX8<.(5+HO2AH-VRW2KR%*PJVK2X%<+$9"Y0;W&[,;T<V3E4<7
M3 IXX2@*9AZLODTIZ"]RH@U4S3TF!<9:*Z&9*,1\2N\\J3O#Y&6/$Y9 2+G+
M))5TFQE*";6;]$D0 \,5-39E3!8N16%,/AC@6[P.#G'!ID5%Y:,8 [0T.JYM
MC1%^W^PH%<"PR@:EU!AUI[9PPK>")%\$K[HT"QT1M^%;(KCN(LCQ.1B"2$#U
M^7!',FIL=G0NL8'@OE0K9'>874(<KX*7RF)6:\&*>AJU7#+%L@J=+*AZ%3!\
MLL/9IUBEA8K@Y1U:E[I0B,;G >Q&;?J2H70SZ7H@G5UU)-33*T(CH!5:+0WY
MQ T*":O#&D.MG5++A[4S5$%F[10JT,AFP*FW=J7N5:)8JQ=17#W\_8>N8E%%
M0'6XZ?&)]\:5PM&TX56:;LIO):/O7^(P?<;2PW42&5<-J81WO-"V)P"B656H
MQ"DVDV.-RPZS<4D/-PE7'&M =XU+KNA"*G''R^8%"PZ0K;P.@:JUG(4I_,!5
M\!'.6*QYZ;4JJJ2.@;%2=AQ^-*!"O?@C"TWOAN DN)(()*Y<71\):^92@^LX
MP:<QTZX('_P<4CD92VWTP7%U &@KQL*8Y#0]L?2%3[2A!F4O-M2J0E(;JM4$
MQTLKN'8VU#P?<M!P)[28JNZ.-[Q5;M=0N%:-!<,%&V8O0!B( ?R"8 *,K!K6
M\7T&#I=(V07.[-S4.$T*DAQ(LCG>F'.#F0UJ:H3SR4N1!6D6D23(7GGX%(L-
MI9KTG?0-FWI#5MUZ5WD=H 3O+FJIF*,_\8(OL0YSMAV:U E'C\L,U+MB2PT)
M2Q#)/\2HWAIAGMR!I<7I""N^[T5*=GIY[.4^1>=:V?.+!=-G+E>7?L_X_,C]
M>BY?KF%1V2MEKJ/F/BQ:WH1FN5(CZRP?G0ENDWI.)>B=/C;HA(1RE7S+=_-N
M+#O8CXRG@T"$HP/M&$\QKIP)D\]A4X(7Y\Z^:E*'SZSNG8VG8^YSE(J^/\HB
MPCP"J"2=%UN<C:+_.O2NYK'[**(V '*JJF1!S+XJ=%(J\ I[#5OZ&R5B@EC6
MS1T;0E' SO$S=:C,+$%/DTD2,(.O]RH'E@& I?KJ67!57@!TQFI1:WA;BC<N
M(%32]A</^24/A+K';*^/! ,_EKDT $2VK;(%I4U%02>W)7XA*K7*.EN3&T65
M#H#+1PW=N%Y*I0+EC<V_!/&AG._%<?J%I8PYS3Y8%0R _2=\B &VW:)4Z'UB
M>%74H\!SK8*"6L?KTNM9B][0ECS5"*5KWJT)>'UZQ[NQTL?B*&IO4O(07SJ
M77H-,!2S@JD*D1K&M+>UI?I[> ? [0 K-U5;S82^K4,.O_-N&ZK]FV3#MG;&
M09:]KM/L2Y!%VMQP1BV7UL&R"FWZ&53 V <[G'W.-5J(J:&.'I@,(^JJS0SI
M1JPT81!0J(H="6?@LI+88QU&QAF@FW(%5UQ=:<,@856"CVBU 563C=86ZF 8
M.QRS9+\"A<&>,*\^9MP-VTKPZ/HI3:,O)(Y'"?52"EH3MLU2/K+]1MHBO!+6
MHG):QFKTX5+6#%J2.:(20P&7NTI,@ !TD:6T=Q6O+$MGD5.XD[\?R'Z'A;P0
M@[5=Q0V<4*4ZDF" JG>JG897N$^A4GB'<"W)-\YB'.1XF\8@K6-&3;AUQRN%
M_5J\-F"];6.2WJEE!4\[/2XM%MHP>7@$LE["![=&?^(B/)A5=OL\NZ>OIC>"
M:&2SANZ'@@_8=$2F*^J59"VP6E91.;BVZPA.F!W@ D6"]8+'&7;3ISZ(2:_B
ME4,2\%HNM>3!FR81J^C,-Q*^W?AY(KN4>F@! )WY5L5.\.>I-A2>G8S\LLZ]
M_Q8]9WH&YN* 4X%_#3.U6YR1YZ \-U'G2[4>NQ3*7D<Q;86TXYE4$ZZWI(,K
MYAQ,J)-->,1$(^MDF'M("Q:+LTG(/W!DT>]Z\KX&,2ELE9'K"'LGC"U"\^H
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
MMZ,]>[V_*!-^&6U,=JQR./J\__^[N[(>MW$D_%?XM)L ;F V,\!BL4]]I),
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
M  /!N@%#ZP^U)A[ <_SS[Z&7QR.K/LVY>E2+#S:#XUP>:V>'/O<.3/<X#J2
M\T8L1XTKNN'T,9,6<\/R#6=I)1\.\1_=!X01=?@P1O>XOM&8D99.K,RY0D2=
M88>]:;LRB"@(0O-ZTJAXT:#WJ?VGK^+_B3^;/XG_@4^Z^,O_ 5!+ P04
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
MY\$/;:Y<?C9,%K^ 6B@%+!#TWMO!YRC=)<Y^%H4.0L1]$A]/FX1")+F +$D
M]5,E5,"8"\+MEB03A<[GK IV7.K]P#4:<.?)D@8RB5,"<" I*#XE>B'W?C\G
MG09(F,(2O27W^$.?^4*1Q'19^H!6%))&PY7)-')646;P#J-^DJ X1QL[F( W
M7I80( JQ&% (WTH8/7C1=L30#"I#9/$+HOM2P8%!*3NBX&R =/TW0'0"Q@\4
M.QB'#L>O71LDBU08URH=) IB__.[VN['^!?ZJTP7+:JP>H%*GL:S:M,?>W>]
MHS<R*S<=X(4\E[PLO6)^KUC@8CY9V?%+1HDTOEO;]BYG%N0G\>$W)ZXI?O''
M<7/3U=%].@MSRPRG6G4Q76[VY2>@"61%M7DA#-5Q4"6NE5!Z?EP8D&BXBIH3
MHM Y9.E1&PY6*9N/7!H%&*""$V)@QQLVWO._@A7,EL)@2-FQ(<@]-)4] X"-
M;<9PL++9#=#/A1B<'O7&[Q.4",G"GP569+L!=63@!R?2L=4]WAN;*.>CP(IO
M-R "#3YPI,\BM+,]M^CK*3P2C.%@%;D;D($+,3@])%^,9B]%^X:T)G>1X(7
M>\][FHYSJ)D[S+:7A(GM9R/A3E"X0U&RGV']C73M)MVY=T1FYUYC_%E@M;Y5
MY%L9P"\]3[4N4P^+T1]8%?(2-"9=Q&98/PJ2QRBD!@#AP:RQ8'6]I3#,V;@A
M]]2I22^R8S3WUANLHS['*(.+S?:":7 5P%487PIV< J-,-Z"-;%6Y4#A4VF]
M.7Y*7$N/8>A^\7Q:8MQ16)&9#5<^7(5>*I@ )]NY(C4) T=->RS/@"LUKD(>
M$<3@)"$/6[)_0LDF=(D0'R>L')IB!G,"7"%R%8((X 6GA_CV4K^A-*OI HP;
M> OE,OBQL_WQYN3=0^PY<)7+U6XB$=3@A,EW)%(,(0N8JYO(WX$2./;L%\_/
MVMZ+G1K4P7!%T"_W-7&@!S\PI;U)>YUX<^ *IDL@FTD6L1=*[<2]HN@EC!'H
MF3L8M6?VGEBTI<WYU?%P-=?EZ40WY],A!S]R>'M1BAFI!A:7-JPI<!79+R /
M'WYP"AT$G3EZ14$J/CJL\7!EVYO2A@\Y.&&PS(FD+S3J8+B2[DU)PH$9G!YC
MDH Y70TPQWABAS%]-%S%]Z84X4$-3I)SZ^L!MKV0.*)Y<-7AFY))#A/@!!N'
MP7J)HNT0O4@<(=I@N$+RC4\0&V9X>BC(99<(9-I,"PWN,PE)K&LF!\;IE_$8
M2$R%JW.OK.9*(P+\Y-7LBR4@U4RKU8EP5?25R26)!'!BE:]PF4/%&@]7B%_=
M8,0%&9XB)T"D7BS(LOV7&.O>P>.49;1N0A^C-\[=B?BXYQ[W&4D[QNA/DLA[
M21.B]2U#PFUAD.#=XUVLLX).*):PU+;]';A&!,H,HP?%X(>\E!']R?936CY@
M,;0^$J[#@5Z:A *X#2%=WW4S;Y'MSVP/O^\#>^<EU X5!T,I:P)<XX1K$E*
M+WAZ.DZZ37V2GIC5JB%54R*T(;UF7E$NOHW#F AMTQ66X[C6?;6%X%HV7)7^
MS? +SA=SE-A>@%S+C@)22J0$!Q;N21L7-BO(S(5K(G%-ZLMC$9S@=7RH2&20
M/2NN25 VECHLR#]Y01@=:JQB'+ )7Q\)UU'CFF1G8<C 4]L$>MVZ%V1?$-C;
MX1)J=/A&*6NX@:ORM(AGPK5 N<3>PT5#JY0VHSK*+,/D!B6>4])VSDJE_"!?
M*J7WI[/U_OU6.D6;028O4==/DPU^\?YUX@*N;:8^J;M%521P ?[LE_:(#\8T
MRL!U,TO1#$79MJ7HQIX,77VE'0**D -.R-GANE<\>Z)YT%5=+B"?'$H,HYSZ
M*92=#UT@IC5*&G\6:Q=_ULY(Y0$\3( N&]/FZW>.!/.(Q*\BS(*J40WA+I!+
MKK8PF(YP:M0V7>76;ZP846SB=(WASSR-X;1T+USU\F5Z&!.]L^6+/\ H$/FW
MCQL5ZPS,"5!.@2R@_@$S\(#8+?!6?O.2S2"-$[S-Z)AP3U+^\/^Z7(=1H\6
MU0H! 6O6_\;H,N">C?%U1'*6,],%BEX]!\6+T.>^A^PYT/J$&N7$T(,3*"L5
M,XO"%<\3=S8(6B=0(P$%O@X;1(_QJT5),HD,8LX4:)U C9)"V,'/TL+V[2@W
MTOYFKWF1A_61T+*^&+NA  )#B#!=K? E&\5$7,. L.J:'\"FCH:6Y%6)P8,9
MG""/*,#0^*,@3B-BBR]@XKPVK G0I2-5R2* ')PRY%G$$F,65O: >/=5?21T
M&4E56K!@!2="%LY5<(KP:% '0U> 5+ZMV!!KJ0%)U/O43^B6'3R@_'?H6H_2
MN*SLVQ!F/L0>"!FY-A"\G*,J%S- !2?! F51(%@N>[*CSZ@$$4<<Y<P!K]NH
M+)D*$:#EELFKWX71'/D9;HADG#6KQ0IF?XW!Q*\._?Z1FPE>H%'E:E)!!OB)
MP1M[13ZI2DR.-(FT)=JH\- (IH'7;U0]-U)H "?6>0:O6&"B#P<O]:@L,_'
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
MP[&/^TE^@V$(PD-;*%)2AQ2BN=\_HG =V;N-Y_0C9"O);!H^"BW J38_UT\
M@Y@LCQS]S7-12<X-SO<?5]K+C8)1X&)5QTUMOPY[_D^9VL;7W06TIZ@Q&UZ/
M1"9)/<1V&T]7L]+:0Y38GA]/[(CX6UX17:RIE2*Y[V/AKS=]Z,VPZH#EFUR
M^5.Q6N^XW-=<.K?%&X5=XT:0DR>]@AFI2LHUKN4!A$_98^YP+$[ADYEK!@E5
MF5:VFM-85_+?D91QE)3(B'\ZD1#_\,?T2X!EE(VW8R0 XC&5(=TF2!V>5M,"
ME='.S \L;]20%,$Z[MBXU9PC>)XV1Z@>[)ZP]! FMB!94&(FF!I"0V#-.J4"
MO980H,H&^#F$S,%@0G83)%\EE1!_<XYL/]F+45H;!Y92*(M-!F2Z$$E2:R6R
MAA71UWX+*EGTU>$!MPP47JV9C=_><H/Q^WWY+PRQXFB%DU^CVW)' X!+-R \
MA9ER"@4P0\25!B@7TDRG6/,<1*4O\6XO^DCHP%@VNY3N,AZ0>JXT@20^)PVC
MV,I/Z<]FL/,%BD\)EA(O7!G53+X^;%"6G?4K.S76J.+RL-4+;X-&R'SR F^;
M;GGHK R!E!$II"\ADPH+R&WP9+\)L7H^1!*K[;>8%6.5!@NXV+A(7V+/];(6
M2F-OZ^&GX-A1AP1-V<%^&A5_(&]$(1P?I>1#_ ;'/-S:%TRM'3\6E0!I&<?@
M3'.H9((W_^(%&?Z);]YS4=Z$-Y/K\A2I#VS&4%L%VAG=F/I-D*5%#Q\%#G$X
MHB'*_SL*LA!&K,N2]LGVFN;BP?,DID%[:-5I(P>71F+,$9'(LP"X@UV+G'=7
M1 V9>=":1R-RR",$_/K#\E%(.LT=[N7C17W:Z_U^EF&*??LI+0(F*UYZ^35
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
M+\<]_L<)Y?B'/\9H;?M6@.^S/<,U@T?5!G4!R;1]M^I0$2,W_S333X*'G(\
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
MV0!M7;13&2U>80TSJ*S&TZK$U68-.!(XCI(2<?%/)\+B'X1$K?\6(5($C6%
MP$M>MF*7B7XQ\'J*-0HX@+4EIBD#3Q+- :;BQ82HT54$\,TVPB.&'(L98"V9
MV$$XV* M#\O5,6!:01/$T@'4@DM,PS+]^+8GYF PZU-#MN6!W&T#WP<S.!C
MYB=X0*=? A3%&V_'EHDJ0SHNY%2@*5UP $CGB2FU0?!R"959:+B]@F0A(4LH
MWA'M!QO14,(2%Z[SJ*F(8Y=(8NW'W,OB4J/4]35YK!M=KQQ/]@\W3[;!GNS^
M;N=[R/TUS$JR#<)HQ[L;V*/!:CJ(W:TB$+7<N,O("Z>[71@E:8 W)T(L9SA8
M[KT8LT(@.Y?O!,&?AN8['=UV60>)Z6J1A,YG?EL;SI0N/VYBZ$IR) RQREL2
M=:2AC36$/"*6JU"$!@ET%YE!N-V&0;:S>U$K&=I8:8.G+G<]FY6JV&=""GYW
M%4'T,SM*]EEI;]O)7/?W^_)?^)>9RAJ&')]+;C<5<$N)'_#T%5UWM+%FT$N=
M2SDTTZDD7&JL5<C[^J MIX_-,R(S+37ERZ1,O*-Y9(8BAR!US8E645@".CQ3
M.7)#*H6/@RTM^LHI0^T2ZIVENK5/0WW1G8V)V!1BC:2<(W)OD'[36:_I:9K$
MB1T0LP*=8KSQX&&9EQ!&C CPJY+TQ>"(WME?P?/,+[WARD!V.O3YR0OPRYOL
M1T&",!%H)_M^/[/Y'<^4%@%/1+^4]@U0UFD6.:$&:YX[.]A/4)+7UWW N)WN
MBE9.\:&WYA#E_V7S2_,5P5/C+V6>2Y$)?KV3HO*C($ZBE #Q9"<I.0M#;F(2
M;PYT9?2+*2I&"#C-,IO2*(Y3Y [Q[H)UWE$B$R'B"?J2_8EK7Y:;#UU@_&):
MJB$*GJYD7ZQZ\@>02F.@BWQ?3I\:P. TF*-7%*2(W-XE2P>W1P]G"G3![XLI
M)$1'IT6AHBI,/$<.\EZ)55>6YN*9X Z(BVDOBQWP,UM4+(J78=$A0JJX%G\6
M7&7/ML@G@Q63LD 7FS!*[K .MB6035<#?)-XB5Q"Z(=:N:9?I_/E7=8??3R:
M9/7Z!W-K.%J:DQY*!,W3GL59H*SQ,&>N3*,'VR&]6/:"_$[.%#,<27R*5(X7
M!QKX9$W:YFKWA1R%QJ:E9 HY3X)08^V)ES<O>\MD;.!8;SF3\N98-]6Q_N2Y
MOAVX6=Q3?&\'GWFN=>9@:!>?E&== *H6=]VO6%+RA'BMCP)7@:0PRH(.7*U9
MXK6GJSZ64H-U%L['?P(8P\VX2E1O>P8P>I+-5"P&IQV14A^3,+!/ORG?D:*8
M1>6%S* CER>K]@-5$'4\#1/TI;^.4/9-;EXW91ST@]"0V<H)WTSH07)EYV3S
M[#S9TI_-X';I6^M\\ZUF;"GAELGAAPT:<IN<XXN.RY9NA4;(?++?O&W*+@2!
MQU2&0%8JH)"^A$PJ++=,SO8O 4[R9CL9+;?D34TR0E$695$8I05)<9SA8/$L
MXO0X(9#@^@[MH/%5'O:,CET=0GC 4T5H6QL3/T\DLF^)9YI++(YV(P9+QU75
MS!2CD#BB+9A'EH$XEIGV$DBHN,VBA7ZW(Q?K6B(,L\:"I^<T0#,?;GVHEL)Q
M ^1^U&9/;(I< XV+YV&._&>6-M;<.YOWP-(@*46DFD *;O%-*A@&E=[DH%F"
M'KI+:BY);$EH!]P*(I4QX#X,$7>4ZXA0X0._:E0D^O<CRW.D^)_@JBJ<;4I8
MX8(ZV@QR2,OI=""@RUO,T6OHOY(Z2F?;$WF-!--D!21MTB>/O^J1Q6(,@-]=
MM%-?&%3OPR@*OQ  [!W^"[4?-N?N8*\"G"Y.%7(%L:9-T&0D;0])@',[0>64
M$37:LE>!=BFV15P1GHPG;C^9'=H'-Z?MV2+0B>@Z2$O!DIY:=%AJ?4SMR,;?
M1NZ<GGU(:KQ1QD$GGROAG0&#08<F/L R2"-^FCA]-'0^>--CP(*[TPE.64X%
M40N/KS O+90V&#I#NPDY.5#K*0OM>VN2U'(J&#!=8=D7WZ&>4T^BHM]LJFM
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
MI9(8;\?Z9^KMB-^-'A*@M !TD$ #@JF":.QQC##(*@<O'P_](+9YQ,H8,(]
M*BZD-GU$VOS_+9).RAG4O9:$-3@G2,+@?3X:.AJ@12J7H#?O>)9JX"J0Z&P6
MM!N_15)1L %Y$B\5;:8![;)5>_JS-:#]\MH%G!*FNDSPBZG]QT=X[[UV8A,@
MX6G=_ET^1)'W:N=AV8?R<RJW.F,^=(Q B_<[%T-7440G84(BA=:!]Z^38YE_
M7"M3P/W_[9Q/*B+,DX]*#GLU*;8Z499L7;#JT)'2\F5J0/C&) S86./&;_S,
MB]^8D)S"F37O+T>3Q]YXNECT!OWY_/>'Z?RW_GQX2S"\A6_<PC=NX1MJ!!R;
M%+Z!>7*&1:W0Y4=L5(9UF3 54,#C,H[[$85BU ::004J![%PKK4GS9=PN0G3
MV [<Y<8C/<#MM]^1'7%[U CF0#OX&,Q1;E4C!;46C:GVZ6F E!%>F0/MH&N
M<"K4UT$X_H4ZAY_/@?:O->%P&M370?B"Q+@HH[PV"]HSU@#I#,BO@_:)U^!F
MJ4Z"=E0U0#H=;MTX?PA3_&T%?-<G0'N:E'#-@A?<QM4D0.U=QJ,IA9]U.B.I
M7A5K@L'-#.%T^]4O5?L5M0!6[[C*S5)ULU3=+%4W2U7G+%6W1*-;HI$IE^,M
MT:AQHI%)F2O:$XU4N@;0M2SFX.[)\CQHM CQI@@96I4U Z,0&B4+&1!$<&_'
MGM,/W*&'!V'.P[N?H6BQP=CBA1#\]#TOA."^C]F^UY\,>\/1^'EI#?,P@IDU
M[RU^[<\MZ! "RXX"3*HCI&*MC#T#YN!-4'*JCLO>=F48\/TI0GOE2%%A!+=/
M_8:\]0:?E#Z^?^TUFJ3D[9RN,H#B:9K$B1VX&,KL8+$IH[@,],6H2+I&2.KT
M2\B N+A6:X K,P9[(6CO83NL(4)4IYFCBB+!W< 8#JUL*!*:"_2[(F?!N_($
M/4Z ]HE>2-(*X._%'W&2COM!XMVY!$KO%4UWV3BN6/R!)Q;W)\O17281CS[A
M7\Q(^P[P<-KNR\*$2 <:+9"31EGHM_7F^"DF?MXZ8KM+<R:9KFK;%_2T;VGY
M;LG>K>+4),TWUR@J*B[?W?C31X:[L:[/@KL<NW^:W[NS4?$@WCR-'7=;W3R-
MG2/9S=-X\S1VU--X*VFH0J+904M=)*'S.;<]C>(XY>GRO#G=\T]* &4PK:0,
MJL*)T$>K7;+Q;:?@^M?)MI+M.;>I]$FW/F'9^9]^X!E7%LOIX+\+HTJO/UB.
M/F75YJ'-*Z?]3E=$949!G"%TCGR253X(XR3."/=BQ\B=V?NLZ(-8;;MT79A#
M7*)^81(F6SWMOH^UYV"-LKW>[T]CBOWWR:D0J($M?L(,L:@=#JK<'"UB"5X!
M%8+ @D!"/VUC;3/XJ/6S5V6I%C"E20^.HZ3$1_BG$P_A'_Z8DQTR5%W\]]*?
MWSDESX'5H^K*T(*I)QTV**L5::;'.;[HN#QL58LZ*D#FDQ=XVW3+0V=E"%@P
M015=-6128=&CE8BP:K\)L7H^!,QS+\8J#19P7:_Q4U*X:$LZ4!Y?HN%]9W\*
MV K0GC34U@,OHDKCN(%=ENZZ2.PH:;VNY4FD+D.;Z]B%#>Q?R'W&.G!4TF1)
M.<?8>D.1X\5H%GD.RLY?"?0"&6=C*.R)MW#='4!;0=IGVZNCT QN-NGVK03[
MB9B^_8N&OP'HT,DN7-4R)/SJ6?XQ(E5\1T%>?T'0]4'+QZ"#0XUE90YIM&2Z
MM?KD9)M'+I#,P/TZ=.BJ^?*"!/',U[28!B3J\=+TWK>Y">B*2' 79?ND-)]]
M!2 _A-$*>4E*CG?@6F\[+\I6.&)!WRLN\6GH@E+&ONG29#.N6T:K#\R ]&3R
M??S$1!D.P 0%V8U -VHQ7V90(^G[OW]A# @7;@NZ14UW[^UN"!WD%.?1<<,T
M\H)UOO?\Q)>.^/',\J2(!FM!=[S1QUZ-$?N^WWGKS2G@!7K?11L ;_IC_L,N
M1T/XN^U2)?( %K1)0'$?X/V/S#4+-**H^8QL< B!0IO##U^U;^J$KE;\4%9@
MN"!@?!B!"N=VR!4%@$43&-JD2]CH2 (5MN^00^SZ2+QQ_>DN( ':ND4/RJ=D
M^?@=.LB:TN4K$CM*.("70(2;D>7E#GG0(-%I K>;=#O#R"32&Y#E_@ZYVZZ-
M0DT<;U;V]8/M19]L/T7].$ZW$D7N_BR=A_W0'\U[G_KC9ZO77RR>G\PH>7?+
MR;[E9-]RL@U]9FMW_RTG^Y:3?<X&MYSL6T[V+2?;A.SA]Y^3W;ZYMLLYV36K
M0_TI>:G>:C3U@O1 <K"@M$31]H/@H=?TS7>=I:V53F:P8A/<T4"<>_'GAPBA
M49 @S +X;"8ZC#?RGWY_B=C7P]U[9-##&?P48MW2\[UD?T4697W\ECE].>FZ
MRZ8R"6/9'X<8W"-B])G$E3=RRY9NEZ1&51@M!8K+]7?XL6;/+MFP#>HG?[-;
MT^W6P\(GPV#YW[QD,PI<[]5S4]O/>YAXP;IV#DA.R@S#&J'$B_+#@@*T\HC!
M9DD89KHZ+8/'XM]B\.B?ES:(F[MW,^QJFBWMYJ(?WH2O'3<2IOYK[L$,AN\"
M;U(/U35)!>.3J&.+Z9]@#+VQ6#,68V,4Q"%2VPM!5/8B$:%SX^V6H15@&7//
M;,M" TBT"+QCA7L >+02@7:A(X8: CG GTK]A.@S3+< 'D<9!ED$MR%KE<(#
MF7!K*7=E;7=^N$>(B^/:($CGR^489L ,;L]YGSV\NO=:2:"V=(68Q"NW-F*W
M-F):*_"\RS9BC5VNV?_[A&+2_&E.3*VD*ZA#Z+$66<O;_QRP0_SZUH:V'.<R
M5.PNCYZJ]$A5Q&OG$] ^\.XR(XM<W65 81;I')'7 _\>:SZ9U1?3A 2L?-3
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
M_[W@;>+?_/]02P$"% ,4    "  9@']6Z 1$KK\X  !7.P  #0
M    @ $     875D:71?,# Q+FIP9U!+ 0(4 Q0    ( !F ?U:=3&47>N<
M +?U   -              "  >HX  !A=61I=%\P,#(N:G!G4$L! A0#%
M  @ &8!_5@N1*O'> P  *!0   H              ( !CR ! &5X,C,M,2YH
M=&U02P$"% ,4    "  9@']6N" O= $(   710  "@              @ &5
M) $ 97@S,2TQ+FAT;5!+ 0(4 Q0    ( !F ?U9$# X!XP<  !I$   *
M          "  ;XL 0!E>#,Q+3(N:'1M4$L! A0#%     @ &8!_5N?8/I0+
M!   HQ(   H              ( !R30! &5X,S(M,2YH=&U02P$"% ,4
M"  9@']6B7&WNT+0 0"H3A0 #               @ '\. $ 9F]R;3$P+6LN
M:'1M4$L! A0#%     @ &8!_5FE3 J6)%@  L/,  !               ( !
M: D# &9S:2TR,#(R,3(S,2YX<V102P$"% ,4    "  9@']6J?4)P: ;   T
M5@$ %               @ $?( , 9G-I+3(P,C(Q,C,Q7V-A;"YX;6Q02P$"
M% ,4    "  9@']6F#&ANAH\  "=Y0, %               @ 'Q.P, 9G-I
M+3(P,C(Q,C,Q7V1E9BYX;6Q02P$"% ,4    "  9@']69EH,81&#  !?<@<
M%               @ $]> , 9G-I+3(P,C(Q,C,Q7VQA8BYX;6Q02P$"% ,4
M    "  9@']6(UC4#IU>  #E3@8 %               @ & ^P, 9G-I+3(P
D,C(Q,C,Q7W!R92YX;6Q02P4&      P # #6 @  3UH$

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